11 #ifndef __UT_VOXELFFT_H
12 #define __UT_VOXELFFT_H
43 int sliceaxis = -1,
bool realdata =
false);
62 int sliceaxis = -1,
bool realdata =
false);
81 for (
int i = 0; i < myRank; i++)
86 myNTransforms = ntransforms;
88 myRealData = realdata;
97 virtual void allocBuffers() = 0;
99 virtual void *mapInBuffer() = 0;
101 virtual void *mapOutBuffer() = 0;
103 virtual void unmapInBuffer(
void *) = 0;
105 virtual void unmapOutBuffer(
void *) = 0;
107 virtual void releaseBuffers() = 0;
114 if (rank != myRank || invert != myInvert ||
115 ntransforms != myNTransforms || realdata != myRealData)
117 for (
int i = 0; i < myRank; i++)
118 if (dims[i] != myDims[i])
129 virtual bool fft() = 0;
134 int &sliceaxis,
int &ndims,
int *dims,
143 bool normalize,
int sliceaxis,
bool realdata);
145 void fftSequence(gu_fft &
fft,
#define THREADED_METHOD8(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8)
virtual bool supportsHermitianComplex() const
GA_API const UT_StringHolder scale
virtual bool isMatching(int rank, int *dims, bool invert, int ntransforms, bool realdata)
virtual size_t getOutputDistance() const
ImageBuf OIIO_API fft(const ImageBuf &src, ROI roi={}, int nthreads=0)
#define THREADED_METHOD4(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4)
virtual exint entries() const
virtual size_t getInputDistance() const
#define THREADED_METHOD9(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9)
gu_fft(int rank, int *dims, bool invert, int ntransforms, bool realdata)
constexpr T normalize(UT_FixedVector< T, D > &a) noexcept
PcpNodeRef_ChildrenIterator begin(const PcpNodeRef::child_const_range &r)
Support for range-based for loops for PcpNodeRef children ranges.