OmniSciDB
a5dc49c757
|
#include <cmath>
#include <vector>
#include <tbb/parallel_for.h>
#include <tbb/task_arena.h>
#include "QueryEngine/heavydbTypes.h"
#include "Shared/StringTransform.h"
#include "Shared/TableFunctionsCommon.hpp"
#include "Shared/math_consts.h"
Go to the source code of this file.
Classes | |
struct | ComputeAgg< AggType > |
struct | ComputeAgg< RasterAggType::COUNT > |
struct | ComputeAgg< RasterAggType::MAX > |
struct | ComputeAgg< RasterAggType::MIN > |
struct | ComputeAgg< RasterAggType::SUM > |
struct | ComputeAgg< RasterAggType::BOX_AVG > |
struct | GeoRaster< T, Z > |
Functions | |
RasterAggType | get_raster_agg_type (const std::string &agg_type_str, const bool is_fill_agg) |
std::vector< double > | generate_1d_gaussian_kernel (const int64_t fill_radius, double sigma) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | geo_rasterize_impl (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const Column< Z > &input_z, const RasterAggType raster_agg_type, const RasterAggType raster_fill_agg_type, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, Column< T > &output_x, Column< T > &output_y, Column< Z > &output_z) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | tf_geo_rasterize__cpu_template (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const Column< Z > &input_z, const TextEncodingNone &agg_type_str, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, Column< T > &output_x, Column< T > &output_y, Column< Z > &output_z) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | tf_geo_rasterize__cpu_template (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const Column< Z > &input_z, const TextEncodingNone &agg_type_str, const TextEncodingNone &fill_agg_type_str, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, Column< T > &output_x, Column< T > &output_y, Column< Z > &output_z) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | tf_geo_rasterize__cpu_template (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const Column< Z > &input_z, const TextEncodingNone &agg_type_str, const TextEncodingNone &fill_agg_type_str, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, const T x_min, const T x_max, const T y_min, const T y_max, Column< T > &output_x, Column< T > &output_y, Column< Z > &output_z) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | tf_geo_multi_rasterize__cpu_template (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const ColumnList< Z > &input_z_cols, const TextEncodingNone &agg_types_str, const TextEncodingNone &fill_agg_types_str, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, Column< T > &output_x, Column< T > &output_y, Column< Array< Z >> &output_z) |
template<typename T , typename Z > | |
TEMPLATE_NOINLINE int32_t | tf_geo_rasterize_slope__cpu_template (TableFunctionManager &mgr, const Column< T > &input_x, const Column< T > &input_y, const Column< Z > &input_z, const TextEncodingNone &agg_type_str, const T bin_dim_meters, const bool geographic_coords, const int64_t neighborhood_fill_radius, const bool fill_only_nulls, const bool compute_slope_in_degrees, Column< T > &output_x, Column< T > &output_y, Column< Z > &output_z, Column< Z > &output_slope, Column< Z > &output_aspect) |
Variables | |
const size_t | max_inputs_per_thread = 1000000L |
const size_t | max_temp_output_entries = 200000000L |
|
strong |
Enumerator | |
---|---|
COUNT | |
MIN | |
MAX | |
SUM | |
AVG | |
GAUSS_AVG | |
BOX_AVG | |
INVALID |
Definition at line 36 of file GeoRasterTableFunctions.hpp.
std::vector<double> generate_1d_gaussian_kernel | ( | const int64_t | fill_radius, |
double | sigma | ||
) |
Definition at line 46 of file GeoRasterTableFunctions.cpp.
References M_PI.
Referenced by GeoRaster< T, Z >::fill_bins_from_gaussian_neighborhood().
TEMPLATE_NOINLINE int32_t geo_rasterize_impl | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const Column< Z > & | input_z, | ||
const RasterAggType | raster_agg_type, | ||
const RasterAggType | raster_fill_agg_type, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Z > & | output_z | ||
) |
Definition at line 1209 of file GeoRasterTableFunctions.hpp.
References GeoRaster< T, Z >::fill_bins_from_neighbors(), GeoRaster< T, Z >::outputDenseColumns(), and GeoRaster< T, Z >::setMetadata().
Referenced by tf_geo_rasterize__cpu_template().
RasterAggType get_raster_agg_type | ( | const std::string & | agg_type_str, |
const bool | is_fill_agg | ||
) |
Definition at line 21 of file GeoRasterTableFunctions.cpp.
References AVG, BOX_AVG, COUNT, GAUSS_AVG, INVALID, MAX, MIN, SUM, and to_upper().
Referenced by tf_geo_multi_rasterize__cpu_template(), tf_geo_rasterize__cpu_template(), tf_geo_rasterize_slope__cpu_template(), and GDALTableFunctions::tf_raster_contour_rasterize_impl().
TEMPLATE_NOINLINE int32_t tf_geo_multi_rasterize__cpu_template | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const ColumnList< Z > & | input_z_cols, | ||
const TextEncodingNone & | agg_types_str, | ||
const TextEncodingNone & | fill_agg_types_str, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Array< Z >> & | output_z | ||
) |
Definition at line 1429 of file GeoRasterTableFunctions.hpp.
References GeoRaster< T, Z >::fill_bins_from_neighbors(), get_raster_agg_type(), TextEncodingNone::getString(), INVALID, ColumnList< T >::numCols(), GeoRaster< T, Z >::outputDenseColumns(), GeoRaster< T, Z >::setMetadata(), split(), and GeoRaster< T, Z >::z_cols_.
TEMPLATE_NOINLINE int32_t tf_geo_rasterize__cpu_template | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const Column< Z > & | input_z, | ||
const TextEncodingNone & | agg_type_str, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Z > & | output_z | ||
) |
Definition at line 1255 of file GeoRasterTableFunctions.hpp.
References GAUSS_AVG, geo_rasterize_impl(), get_raster_agg_type(), TextEncodingNone::getString(), and INVALID.
TEMPLATE_NOINLINE int32_t tf_geo_rasterize__cpu_template | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const Column< Z > & | input_z, | ||
const TextEncodingNone & | agg_type_str, | ||
const TextEncodingNone & | fill_agg_type_str, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Z > & | output_z | ||
) |
Definition at line 1304 of file GeoRasterTableFunctions.hpp.
References geo_rasterize_impl(), get_raster_agg_type(), TextEncodingNone::getString(), and INVALID.
TEMPLATE_NOINLINE int32_t tf_geo_rasterize__cpu_template | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const Column< Z > & | input_z, | ||
const TextEncodingNone & | agg_type_str, | ||
const TextEncodingNone & | fill_agg_type_str, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
const T | x_min, | ||
const T | x_max, | ||
const T | y_min, | ||
const T | y_max, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Z > & | output_z | ||
) |
Definition at line 1361 of file GeoRasterTableFunctions.hpp.
References GeoRaster< T, Z >::fill_bins_from_neighbors(), get_raster_agg_type(), TextEncodingNone::getString(), INVALID, GeoRaster< T, Z >::outputDenseColumns(), and GeoRaster< T, Z >::setMetadata().
TEMPLATE_NOINLINE int32_t tf_geo_rasterize_slope__cpu_template | ( | TableFunctionManager & | mgr, |
const Column< T > & | input_x, | ||
const Column< T > & | input_y, | ||
const Column< Z > & | input_z, | ||
const TextEncodingNone & | agg_type_str, | ||
const T | bin_dim_meters, | ||
const bool | geographic_coords, | ||
const int64_t | neighborhood_fill_radius, | ||
const bool | fill_only_nulls, | ||
const bool | compute_slope_in_degrees, | ||
Column< T > & | output_x, | ||
Column< T > & | output_y, | ||
Column< Z > & | output_z, | ||
Column< Z > & | output_slope, | ||
Column< Z > & | output_aspect | ||
) |
Definition at line 1509 of file GeoRasterTableFunctions.hpp.
References GeoRaster< T, Z >::calculate_slope_and_aspect(), GeoRaster< T, Z >::fill_bins_from_neighbors(), GAUSS_AVG, get_raster_agg_type(), TextEncodingNone::getString(), INVALID, GeoRaster< T, Z >::outputDenseColumns(), and GeoRaster< T, Z >::setMetadata().
const size_t max_inputs_per_thread = 1000000L |
Definition at line 32 of file GeoRasterTableFunctions.hpp.
Referenced by GeoRaster< T, Z >::compute(), compute_table_function_col_chunk_stats(), GeoRaster< T, Z >::GeoRaster(), get_column_mean(), get_column_metadata(), get_column_min_max(), get_column_stats(), get_column_std_dev(), and r2_score_impl().
const size_t max_temp_output_entries = 200000000L |
Definition at line 33 of file GeoRasterTableFunctions.hpp.
Referenced by GeoRaster< T, Z >::computeParallelImpl().