00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00012 void
00013 HxFunc3dTemplateOpK3d(ImDataPtrT imPtr, ArithType ,
00014 ScrDataPtrT scratchPtr, HxSizes imSize,
00015 KerDataPtrT kerPtr, HxSizes kerSize,
00016 HxString gMul, HxString gAdd);
00017
00018
00019 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT,
00020 class BinPixOp1, class BinPixOp2>
00021 void
00022 HxFunc3dTemplateOpK3dNew(ImDataPtrT imPtr, ArithType ,
00023 ScrDataPtrT scratchPtr, HxSizes imSize,
00024 KerDataPtrT kerPtr, HxSizes kerSize,
00025 BinPixOp1 gMul, BinPixOp2 gAdd);
00026
00027
00028 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00029 void
00030 HxFunc3dTemplateOpK3d(ImDataPtrT imPtr, ArithType ,
00031 ScrDataPtrT scratchPtr, HxSizes imSize,
00032 KerDataPtrT kerPtr, HxSizes kerSize,
00033 HxBpoVec3Double gMul, HxBpoVec3Double gAdd);
00034
00035
00036 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00037 void
00038 HxFunc3dConvolutionK3d(ImDataPtrT imPtr, ArithType ,
00039 ScrDataPtrT scratchPtr, HxSizes imSize,
00040 KerDataPtrT kerPtr, HxSizes kerSize, HxScalarDouble kerWeight);
00041
00042
00043 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00044 void
00045 HxFunc3dConvolutionK1d(ImDataPtrT imPtr, ArithType ,
00046 ScrDataPtrT scratchPtr, int dimension, HxSizes imSize,
00047 KerDataPtrT kerPtr, int kerWidth, HxScalarDouble kerWeight);
00048
00049
00050 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00051 void
00052 HxFunc3dNeighbourhoodOpK3d(ImDataPtrT imPtr, ArithType ,
00053 ScrDataPtrT scratchPtr, HxSizes imSize,
00054 KerDataPtrT kerPtr, HxSizes kerSize,
00055 HxString nfName);
00056
00057
00058 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT,
00059 class NeighOp>
00060 void
00061 HxFunc3dNeighbourhoodOpK3dNew(ImDataPtrT imPtr, ArithType ,
00062 ScrDataPtrT scratchPtr, HxSizes imSize,
00063 KerDataPtrT kerPtr, HxSizes kerSize,
00064 NeighOp nFunc);
00065
00066
00067 template<class ImDataPtrT, class ArithType, class ScrDataPtrT, class KerDataPtrT>
00068 void
00069 HxFunc3dNormCorrelation(ImDataPtrT imPtr, ArithType ,
00070 ScrDataPtrT scratchPtr, HxSizes imSize,
00071 KerDataPtrT kerPtr, HxSizes kerSize);
00072
00073
00074 template<class ImDataPtrT, class ArithType, class ScrDataPtrT>
00075 void
00076 HxFunc3dNonMaxGradDir(ImDataPtrT objPtr, ArithType, HxSizes imSize,
00077 ScrDataPtrT scrPtr);
00078
00079
00080 template<class ImDataPtrT, class ArithType, class MaskDataPtrT>
00081 HxValue
00082 HxFunc3dSampleWeightMask(ImDataPtrT imPtr, ArithType ,
00083 MaskDataPtrT maskPtr, HxSizes maskSize, HxPoint p, HxString sFunc);
00084
00085
00086 template<class ImDataPtrT, class ArithType>
00087 ArithType
00088 HxFunc3dSample(ImDataPtrT imPtr, ArithType ,
00089 double x, double y, double z, HxGeoIntType gi);
00090
00091
00092 template<class ImDataPtrT, class ArithType, class ScrDataPtrT>
00093 void
00094 HxFunc3dSetScratchBorderMirror(
00095 ImDataPtrT objPtr, ArithType , HxSizes imSize,
00096 ScrDataPtrT scratchPtr, HxSizes borderSize);
00097
00098
00099 #ifdef INC_TEMPLATE_SRC
00100 #include "HxFuncs3d.c"
00101 #endif