typedef struct { int x, y, z; double x0, y0, z0; uchar *data; } image_uchar;
typedef struct { int x, y, z; double x0, y0, z0; real *data; } image_real;
typedef struct { int x, y, z; double x0, y0, z0; complex *data; } image_complex;Origon ollessa (0, 0, 0) se osoittaa kuvan vasemmassa alanurkassa syvimmällä olevan pikselin (tai vokselin) keskipisteeseen. Oletamme pikselien (ja vokselien) olevan pisteitä. Kuvat sijoitetaan muistiin sanakirjajärjestykseen niin, että akselit vähiten merkitsevästä eniten merkitsevään ovat X, Y ja Z, jolloin kolmiulotteinen kuva koostuu jonosta kaksiulotteisia Z-akselin kanssa kohtisuorassa olevia kuvia (katso kuva 6.1). Reaali- ja kompleksiluvut peritään FFTW-kirjastosta ja kokonaislukutyyppinä käytetään kahdeksanbittistä etumerkitöntä kokonaislukua
unsigned char
.
typedef unsigned char uchar; typedef fftw_real real; typedef fftw_complex complex;FFTW:n kyseiset tietotyypit on määritelty seuraavasti:
typedef double fftw_real; typedef struct { fftw_real re, im; } fftw_complex;
Nämä tietorakenteet on esitelty moduulissa Kuvankäsittelijä 5.2.4.