Exracting Interleaved floating point data
For anybody using the cufft library from cuda (or somebody that knows their stuff)- what is the most efficient way to recover data from the interleaved data type cufftComplex?

Data is added to the structure as follows:

    cufftComplex SomeData;
    /*...a loop...*/ 
    SomeData[i].x=1.0f;
    SomeData[i].y=0.0f;

So now if I cast `&(SomeData[0].x&` as a pointer to a float, I have data in the form "1 0 1 0 1 " Because the x/y data is interleaved. I want to correctly type it so that I get "1 1 1 1 " ect. Is there a way to recast this type without using a loop and directly assigning the elements? 

Thanks for any info. As I previously mentioned this is part of the CUDA sdk.
Exracting Interleaved floating point data
===

For anybody using the cufft library from cuda (or somebody that knows their stuff)- what is the most efficient way to recover data from the interleaved data type cufftComplex?

Data is added to the structure as follows:

    cufftComplex SomeData;
    /*...a loop...*/ 
    SomeData[i].x=1.0f;
    SomeData[i].y=0.0f;

So now if I cast `&(SomeData[0].x&` as a pointer to a float, I have data in the form "1 0 1 0 1 " Because the x/y data is interleaved. I want to correctly type it so that I get "1 1 1 1 " ect. Is there a way to recast this type without using a loop and directly assigning the elements? 

Thanks for any info. As I previously mentioned this is part of the CUDA sdk.