LibSWIFFT  1.2.0
Macros | Functions
swifft_fft_api.inl File Reference

LibSWIFFT internal C FFT API. More...

This graph shows which files directly or indirectly include this file:

Macros

#define LIBSWIFFT_API(name)   name
 

Functions

void LIBSWIFFT_API() SWIFFT_fft (const BitSequence *LIBSWIFFT_RESTRICT input, const BitSequence *LIBSWIFFT_RESTRICT sign, int m, int16_t *LIBSWIFFT_RESTRICT fftout)
 Computes the FFT phase of SWIFFT. More...
 
void LIBSWIFFT_API() SWIFFT_fftsum (const int16_t *LIBSWIFFT_RESTRICT ikey, const int16_t *LIBSWIFFT_RESTRICT ifftout, int m, int16_t *LIBSWIFFT_RESTRICT iout)
 Computes the FFT-sum phase of SWIFFT. More...
 
void LIBSWIFFT_API() SWIFFT_fftMultiple (int nblocks, const BitSequence *LIBSWIFFT_RESTRICT input, const BitSequence *LIBSWIFFT_RESTRICT sign, int m, int16_t *LIBSWIFFT_RESTRICT fftout)
 Computes the FFT phase of SWIFFT for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_fftsumMultiple (int nblocks, const int16_t *LIBSWIFFT_RESTRICT ikey, const int16_t *LIBSWIFFT_RESTRICT ifftout, int m, int16_t *LIBSWIFFT_RESTRICT iout)
 Computes the FFT-sum phase of SWIFFT for multiple blocks. More...
 

Detailed Description

LibSWIFFT internal C FFT API.

Macro Definition Documentation

◆ LIBSWIFFT_API

#define LIBSWIFFT_API (   name)    name

Function Documentation

◆ SWIFFT_fft()

void LIBSWIFFT_API() SWIFFT_fft ( const BitSequence *LIBSWIFFT_RESTRICT  input,
const BitSequence *LIBSWIFFT_RESTRICT  sign,
int  m,
int16_t *LIBSWIFFT_RESTRICT  fftout 
)

Computes the FFT phase of SWIFFT.

Parameters
[in]inputthe blocks of input, each of 256 bytes (2048 bits).
[in]signthe blocks of sign bits corresponding to blocks of input of 256 bytes (2048 bits).
[in]mnumber of 8-elements in the input.
[out]fftoutthe blocks of FFT-output elements, totaling N*m.

◆ SWIFFT_fftMultiple()

void LIBSWIFFT_API() SWIFFT_fftMultiple ( int  nblocks,
const BitSequence *LIBSWIFFT_RESTRICT  input,
const BitSequence *LIBSWIFFT_RESTRICT  sign,
int  m,
int16_t *LIBSWIFFT_RESTRICT  fftout 
)

Computes the FFT phase of SWIFFT for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in]inputthe blocks of input, each of 256 bytes (2048 bits).
[in]signthe blocks of sign bits corresponding to blocks of input of 256 bytes (2048 bits).
[in]mnumber of 8-elements in the input.
[out]fftoutthe blocks of FFT-output elements, totaling N*m.

◆ SWIFFT_fftsum()

void LIBSWIFFT_API() SWIFFT_fftsum ( const int16_t *LIBSWIFFT_RESTRICT  ikey,
const int16_t *LIBSWIFFT_RESTRICT  ifftout,
int  m,
int16_t *LIBSWIFFT_RESTRICT  iout 
)

Computes the FFT-sum phase of SWIFFT.

Parameters
[in]ikeythe SWIFFT key.
[in]ifftoutthe blocks of FFT-output elements, totaling N*m
[in]mnumber of 8-elements in the input.
[out]ioutthe blocks of output elements, each of 64 double-bytes (1024 bits).

◆ SWIFFT_fftsumMultiple()

void LIBSWIFFT_API() SWIFFT_fftsumMultiple ( int  nblocks,
const int16_t *LIBSWIFFT_RESTRICT  ikey,
const int16_t *LIBSWIFFT_RESTRICT  ifftout,
int  m,
int16_t *LIBSWIFFT_RESTRICT  iout 
)

Computes the FFT-sum phase of SWIFFT for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in]ikeythe SWIFFT key.
[in]ifftoutthe blocks of FFT-output elements, totaling N*m
[in]mnumber of 8-elements in the input.
[out]ioutthe blocks of output elements, each of 64 double-bytes (1024 bits).