4
typedef struct STProcessingState *DICTContext;
12
DICT_ERROR_CUDA_MALLOC = 2,
13
DICT_ERROR_MALLOC = 3,
18
DICT_FLAGS_DEFAULT = 0,
19
DICT_FLAGS_FIXED_FFT_SIZE = 1
24
* Detect supported hardware devices
26
* @return the number of supported hardware devices, 0 - if all detected devices
27
* does not meet minimal requirements, and -1 if no devices are detected.
29
int dictDetectHardware();
31
DICTContext dictCreateContext();
32
void dictDestroyContext(DICTContext ctx);
35
* Initializes context with given configuration
37
* @param ncp is a number of control points
38
* @param corrsize is a radius of correlation area (15)
39
* @param precision defines number of signifcant digits after decimal point (1000)
40
* @return 0 or error code
42
int dictSetup(DICTContext ctx, int ncp, int corrsize, int precision, DICTFlags flags);
43
int dictSetDimensions(DICTContext ps, int width, int height);
45
int dictSetTemplatePoints(DICTContext ctx, const float *points_x, const float *points_y);
46
int dictSetCurrentPoints(DICTContext ctx, const float *points_x, const float *points_y);
47
int dictGetCurrentPoints(DICTContext ctx, float *points_x, float *points_y);
49
int dictLoadTemplateImage(DICTContext ctx, const unsigned char *img, int width, int height);
50
int dictLoadTemplateFragment(DICTContext ctx, int icp, int ncp, const unsigned char *img);
51
//int dictLoadTemplateImageFile(DICTContext ctx, const char *name);
53
int dictLoadImage(DICTContext ctx, unsigned char *img);
54
int dictLoadFragment(DICTContext ctx, int icp, int ncp, const unsigned char *image);
55
//int dictLoadImageFile(DICTContext ctx, const char *name);
57
int dictSetPointsBuffer(DICTContext ps, float *point_x, float *point_y);
58
int dictCompute(DICTContext ctx);
59
int dictProcessImage(DICTContext ctx, unsigned char *img);
60
//int dictProcessImageFile(DICTContext ctx, const char *name);
63
// Internal use only, this functions could be revised
64
int dictGetCorrelations(DICTContext ps, int icp, float *res);
65
int dictGetCorrections(DICTContext ps, float *res_x, float *res_y);
66
int dictGetLocalSum(DICTContext ps, int icp, float *lsum, float *denom);
68
typedef void (*DICTLogger)(const char *msg, ...);
69
int dictSetLogger(DICTLogger error_reporter, DICTLogger message_writer);
75
#endif /* _DICT_HW_H */