7
// Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Inc. ("Apple")
8
// in consideration of your agreement to the following terms, and your use,
9
// installation, modification or redistribution of this Apple software
10
// constitutes acceptance of these terms. If you do not agree with these
11
// terms, please do not use, install, modify or redistribute this Apple
14
// In consideration of your agreement to abide by the following terms, and
15
// subject to these terms, Apple grants you a personal, non - exclusive
16
// license, under Apple's copyrights in this original Apple software ( the
17
// "Apple Software" ), to use, reproduce, modify and redistribute the Apple
18
// Software, with or without modifications, in source and / or binary forms;
19
// provided that if you redistribute the Apple Software in its entirety and
20
// without modifications, you must retain this notice and the following text
21
// and disclaimers in all such redistributions of the Apple Software. Neither
22
// the name, trademarks, service marks or logos of Apple Inc. may be used to
23
// endorse or promote products derived from the Apple Software without specific
24
// prior written permission from Apple. Except as expressly stated in this
25
// notice, no other rights or licenses, express or implied, are granted by
26
// Apple herein, including but not limited to any patent rights that may be
27
// infringed by your derivative works or by other works in which the Apple
28
// Software may be incorporated.
30
// The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO
31
// WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED
32
// WARRANTIES OF NON - INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A
33
// PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION
34
// ALONE OR IN COMBINATION WITH YOUR PRODUCTS.
36
// IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR
37
// CONSEQUENTIAL DAMAGES ( INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
38
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
39
// INTERRUPTION ) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION
40
// AND / OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
41
// UNDER THEORY OF CONTRACT, TORT ( INCLUDING NEGLIGENCE ), STRICT LIABILITY OR
42
// OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
44
// Copyright ( C ) 2008 Apple Inc. All Rights Reserved.
46
////////////////////////////////////////////////////////////////////////////////////////////////////
79
clFFT_SplitComplexFormat = 0,
80
clFFT_InterleavedComplexFormat = 1
102
typedef void* clFFT_Plan;
104
clFFT_Plan clFFT_CreatePlan( cl_context context, clFFT_Dim3 n, clFFT_Dimension dim, clFFT_DataFormat dataFormat, cl_int *error_code );
106
void clFFT_DestroyPlan( clFFT_Plan plan );
108
cl_int clFFT_ExecuteInterleaved( cl_command_queue queue, clFFT_Plan plan, cl_int batchSize, clFFT_Direction dir,
109
cl_mem data_in, cl_mem data_out,
110
cl_int num_events, cl_event *event_list, cl_event *event );
112
cl_int clFFT_ExecutePlannar( cl_command_queue queue, clFFT_Plan plan, cl_int batchSize, clFFT_Direction dir,
113
cl_mem data_in_real, cl_mem data_in_imag, cl_mem data_out_real, cl_mem data_out_imag,
114
cl_int num_events, cl_event *event_list, cl_event *event );
116
cl_int clFFT_1DTwistInterleaved(clFFT_Plan Plan, cl_command_queue queue, cl_mem array,
117
size_t numRows, size_t numCols, size_t startRow, size_t rowsToProcess, clFFT_Direction dir);
120
cl_int clFFT_1DTwistPlannar(clFFT_Plan Plan, cl_command_queue queue, cl_mem array_real, cl_mem array_imag,
121
size_t numRows, size_t numCols, size_t startRow, size_t rowsToProcess, clFFT_Direction dir);
123
void clFFT_DumpPlan( clFFT_Plan plan, FILE *file);