26 #ifndef PROSHADE_SPHERICAL_HARMONICS
27 #define PROSHADE_SPHERICAL_HARMONICS
39 void allocateComputationMemory ( proshade_unsign band, proshade_double*& inputReal, proshade_double*& inputImag, proshade_double*& outputReal,
40 proshade_double*& outputImag,
double*& shWeights,
double*& tableSpaceHelper, fftw_complex*& workspace );
42 proshade_double*& fltres, proshade_double*& scratchpad );
43 void initialiseFFTWPlans ( proshade_unsign band, fftw_plan& fftPlan, fftw_plan& dctPlan, proshade_double*& inputReal,
44 proshade_double*& inputImag, proshade_double*& rres, proshade_double*& ires,
45 proshade_double*& scratchpad );
46 void releaseSphericalMemory ( proshade_double*& inputReal, proshade_double*& inputImag, proshade_double*& outputReal,
47 proshade_double*& outputImag,
double*& tableSpaceHelper,
double**& tableSpace,
48 double*& shWeights, fftw_complex*& workspace, fftw_plan& fftPlan, fftw_plan& dctPlan );
49 void initialiseAllMemory ( proshade_unsign band, proshade_double*& inputReal, proshade_double*& inputImag,
50 proshade_double*& outputReal,
51 proshade_double*& outputImag,
double*& shWeights,
double**& tableSpace,
52 double*& tableSpaceHelper, fftw_complex*& workspace, proshade_double*& rres, proshade_double*& ires,
53 proshade_double*& fltres, proshade_double*& scratchpad, fftw_plan& fftPlan, fftw_plan& dctPlan );
55 proshade_double*& rres,
56 proshade_double*& ires, proshade_double* mappedData, fftw_plan& fftPlan, proshade_double normCoeff );
58 proshade_double*& outputReal,
59 proshade_double*& outputImag, proshade_double*& rres, proshade_double*& ires, proshade_double*& fltres,
60 proshade_double*& scratchpad,
double**& tablePml,
double*& shWeights, fftw_plan& dctPlan );
62 proshade_complex*& shArray );