Library/ManagedCuda/CudaFFT/CudaFFTNativeMethods.cs
/// <summary>
/// This call gives a more accurate estimate of the work area size required for a plan than
/// cufftEstimateSizeMany(), given the specified parameters, and taking into account
/// any plan settings that may have been made.<para/>
/// The batch input parameter tells CUFFT how many transforms to configure. With this
/// function, batched plans of 1, 2, or 3 dimensions may be created.<para/>
/// The cufftPlanMany() API supports more complicated input and output data layouts
/// via the advanced data layout parameters: inembed, istride, idist, onembed,
/// ostride, and odist.<para/>
/// All arrays are assumed to be in CPU memory
/// </summary>
/// <param name="handle">cufftHandle object</param>
/// <param name="rank">Dimensionality of the transform (1, 2, or 3)</param>
/// <param name="n">Array of size rank, describing the size of each dimension</param>
/// <param name="inembed">Pointer of size rank that indicates the storage dimensions of
/// the input data in memory. If set to NULL all other advanced
/// data layout parameters are ignored.</param>
/// <param name="istride">Indicates the distance between two successive input
/// elements in the least significant (i.e., innermost) dimension</param>
/// <param name="idist">Indicates the distance between the first element of two
/// consecutive signals in a batch of the input data</param>
/// <param name="onembed">Pointer of size rank that indicates the storage dimensions of
/// the output data in memory. If set to NULL all other advanced
/// data layout parameters are ignored.</param>
/// <param name="ostride">Indicates the distance between two successive output
/// elements in the output array in the least significant (i.e.,
/// innermost) dimension</param>
/// <param name="odist">Indicates the distance between the first element of two
/// consecutive signals in a batch of the output data</param>
/// <param name="type">The transform data type (e.g., CUFFT_R2C for single
/// precision real to complex)</param>
/// <param name="batch">Batch size for this transform</param>
/// <param name="workArea">Pointer to the size of the work space</param>
/// <returns></returns>
This call gives a more accurate estimate of the work area size required for a plan than
cufftEstimateSizeMany(), given the specified parameters, and taking into account
any plan settings that may have been made.
The batch input parameter tells CUFFT how many transforms to configure. With this
function, batched plans of 1, 2, or 3 dimensions may be created.
The cufftPlanMany() API supports more complicated input and output data layouts
via the advanced data layout parameters: inembed, istride, idist, onembed,
ostride, and odist.
All arrays are assumed to be in CPU memory
This call gives a more accurate estimate of the work area size required for a plan than cufftEstimateSizeMany () given the specified parameters and taking into account any plan settings that may have been made . The batch input parameter tells CUFFT how many transforms to configure . With this function batched plans of 1 2 or 3 dimensions may be created . The cufftPlanMany () API supports more complicated input and output data layouts via the advanced data layout parameters : inembed istride idist onembed ostride and odist . All arrays are assumed to be in CPU memory
[DllImport(CUFFT_API_DLL_NAME)]
		public static extern cufftResult cufftGetSizeMany(cufftHandle handle,
									  int rank, [In] int[] n, [In] int[] inembed, [In] int istride, [In] int idist,
								      [In] int[] onembed, [In] int ostride, [In] int odist,
									  cufftType type, int batch, ref SizeT workArea);
[ DllImport ( CUFFT_API_DLL_NAME ) ] public static extern cufftResult cufftGetSizeMany ( cufftHandle handle , int rank , [ In ] int [ ] n , [ In ] int [ ] inembed , [ In ] int istride , [ In ] int idist , [ In ] int [ ] onembed , [ In ] int ostride , [ In ] int odist , cufftType type , int batch , ref SizeT workArea ) ;
This call gives a more accurate estimate of the work area size required for a plan than
cufftEstimateSizeMany(), given the specified parameters, and taking into account
any plan settings that may have been made.
This call gives a more accurate estimate of the work area size required for a plan than cufftEstimateSizeMany () given the specified parameters and taking into account any plan settings that may have been made .
None
handle
cufftHandle
None
rank
int
Dimensionality of the transform (1, 2, or 3)
Dimensionality of the transform ( 1 2 or 3 )
int[]
[In]
<not_specific>
int
[In]
<not_specific>
type
cufftType
The transform data type
The transform data type
batch
int
Batch size for this transform
Batch size for this transform
SizeT
ref
<not_specific>
n
<not_specific>
Array of size rank, describing the size of each dimension
Array of size rank describing the size of each dimension
inembed
<not_specific>
Pointer of size rank that indicates the storage dimensions of
the input data in memory. If set to NULL all other advanced
data layout parameters are ignored.
Pointer of size rank that indicates the storage dimensions of the input data in memory . If set to NULL all other advanced data layout parameters are ignored .
istride
<not_specific>
Indicates the distance between two successive input
elements in the least significant  dimension
Indicates the distance between two successive input elements in the least significant dimension
idist
<not_specific>
Indicates the distance between the first element of two
consecutive signals in a batch of the input data
Indicates the distance between the first element of two consecutive signals in a batch of the input data
onembed
<not_specific>
Pointer of size rank that indicates the storage dimensions of
the output data in memory. If set to NULL all other advanced
data layout parameters are ignored.
Pointer of size rank that indicates the storage dimensions of the output data in memory . If set to NULL all other advanced data layout parameters are ignored .
ostride
<not_specific>
Indicates the distance between two successive output
elements in the output array in the least significant  dimension
Indicates the distance between two successive output elements in the output array in the least significant dimension
odist
<not_specific>
Indicates the distance between the first element of two
consecutive signals in a batch of the output data
Indicates the distance between the first element of two consecutive signals in a batch of the output data
workArea
<not_specific>
Pointer to the size of the work space
Pointer to the size of the work space