Go to the documentation of this file.00001
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef VL_HOMKERMAP_H
00015 #define VL_HOMKERMAP_H
00016
00017 #include "generic.h"
00018
00019 #include <math.h>
00020
00022 typedef enum {
00023 VlHomogeneousKernelIntersection = 0,
00024 VlHomogeneousKernelChi2,
00025 VlHomogeneousKernelJS
00026 } VlHomogeneousKernelType ;
00027
00029 typedef enum {
00030 VlHomogeneousKernelMapWindowUniform = 0,
00031 VlHomogeneousKernelMapWindowRectangular = 1,
00032 } VlHomogeneousKernelMapWindowType ;
00033
00034 #ifndef __DOXYGEN__
00035 struct _VlHomogeneousKernelMap ;
00036 typedef struct _VlHomogeneousKernelMap VlHomogeneousKernelMap ;
00037 #else
00038
00039 typedef OPAQUE VlHomogeneousKernelMap ;
00040 #endif
00041
00044 VL_EXPORT VlHomogeneousKernelMap *
00045 vl_homogeneouskernelmap_new (VlHomogeneousKernelType kernelType,
00046 double gamma,
00047 vl_size order,
00048 double period,
00049 VlHomogeneousKernelMapWindowType windowType) ;
00050 VL_EXPORT void
00051 vl_homogeneouskernelmap_delete (VlHomogeneousKernelMap * self) ;
00056 VL_EXPORT void
00057 vl_homogeneouskernelmap_evaluate_d (VlHomogeneousKernelMap const * self,
00058 double * destination,
00059 vl_size stride,
00060 double x) ;
00061
00062 VL_EXPORT void
00063 vl_homogeneouskernelmap_evaluate_f (VlHomogeneousKernelMap const * self,
00064 float * destination,
00065 vl_size stride,
00066 double x) ;
00072 VL_EXPORT vl_size
00073 vl_homogeneouskernelmap_get_order (VlHomogeneousKernelMap const * self) ;
00074
00075 VL_EXPORT vl_size
00076 vl_homogeneouskernelmap_get_dimension (VlHomogeneousKernelMap const * self) ;
00077
00078 VL_EXPORT VlHomogeneousKernelType
00079 vl_homogeneouskernelmap_get_kernel_type (VlHomogeneousKernelMap const * self) ;
00080
00081 VL_EXPORT VlHomogeneousKernelMapWindowType
00082 vl_homogeneouskernelmap_get_window_type (VlHomogeneousKernelMap const * self) ;
00085
00086 #endif