34 lines
1.2 KiB
C
34 lines
1.2 KiB
C
// The following ifdef block is the standard way of creating macros which make exporting
|
|
// from a DLL simpler. All files within this DLL are compiled with the GAUSLIB_EXPORTS
|
|
// symbol defined on the command line. This symbol should not be defined on any project
|
|
// that uses this DLL. This way any other project whose source files include this file see
|
|
// GAUSLIB_API functions as being imported from a DLL, whereas this DLL sees symbols
|
|
// defined with this macro as being exported.
|
|
|
|
typedef struct c_bbox {
|
|
double minX;
|
|
double maxX;
|
|
double minY;
|
|
double maxY;
|
|
double minZ;
|
|
double maxZ;
|
|
} c_bbox;
|
|
|
|
|
|
#define ALGO_BOX 0
|
|
#define ALGO_EXBOX 1
|
|
#define ALGO_BOX_SIMD 2
|
|
#define ALGO_BOX_CL 3
|
|
|
|
void gausKde2D_simple(float* X, int sizeX,
|
|
float* weights,
|
|
float hx, float hy,
|
|
int nBinsX, int nBinsY,
|
|
c_bbox* boundingBox,
|
|
int algorithm,
|
|
double* out_maxValue,
|
|
double* out_maxPosX, double* out_maxPosY,
|
|
double* out_runTimeInNS,
|
|
float* out_density);
|
|
|
|
|