Skip to content
Snippets Groups Projects
Select Git revision
  • f48a09ac2ff23f6f333b63c5116018e8d5549bd4
  • master default protected
  • antenna-patterns
  • qt5-qopenglwidget
  • license-demo
  • isolated
  • isolated-fixedprofile
  • release_1.1
  • press-conference
  • rim-only
  • release_1.0
11 results

antenna.cpp

Blame
  • fft_setup.cpp 10.07 KiB
    #include "fft_internal.h" 
    #include "fft_base_kernels.h" 
    #include <stdlib.h> 
    #include <string.h> 
    #include <sys/types.h> 
    #include <sys/stat.h> 
    #include <iostream> 
    #include <string> 
    #include <sstream> 
      
    using namespace std; 
      
    extern void getKernelWorkDimensions(cl_fft_plan *plan, cl_fft_kernel_info *kernelInfo, cl_int *batchSize, size_t *gWorkItems, size_t *lWorkItems); 
      
    static void  
    getBlockConfigAndKernelString(cl_fft_plan *plan) 
    { 
        plan->temp_buffer_needed = 0; 
        *plan->kernel_string += baseKernels; 
         
        if(plan->format == clFFT_SplitComplexFormat) 
            *plan->kernel_string += twistKernelPlannar; 
        else 
            *plan->kernel_string += twistKernelInterleaved; 
         
        switch(plan->dim)  
        { 
            case clFFT_1D: 
                FFT1D(plan, cl_fft_kernel_x); 
                break; 
                 
            case clFFT_2D: 
                FFT1D(plan, cl_fft_kernel_x);  
                FFT1D(plan, cl_fft_kernel_y);   
                break; 
                 
            case clFFT_3D: 
                FFT1D(plan, cl_fft_kernel_x);  
                FFT1D(plan, cl_fft_kernel_y);  
                FFT1D(plan, cl_fft_kernel_z);  
                break; 
                 
            default: 
                return; 
        } 
         
        plan->temp_buffer_needed = 0; 
        cl_fft_kernel_info *kInfo = plan->kernel_info; 
        while(kInfo) 
        { 
            plan->temp_buffer_needed |= !kInfo->in_place_possible; 
            kInfo = kInfo->next; 
        } 
    } 
      
      
    static void 
    deleteKernelInfo(cl_fft_kernel_info *kInfo) 
    { 
        if(kInfo) 
        { 
            if(kInfo->kernel_name) 
                free(kInfo->kernel_name); 
            if(kInfo->kernel) 
                clReleaseKernel(kInfo->kernel); 
            free(kInfo); 
        }    
    } 
      
    static void