2 #ifndef USRP_DEMODULATOR_INCLUDED 3 #define USRP_DEMODULATOR_INCLUDED 30 int process(float2** __restrict__ in, float2** __restrict__ out);
41 bool decimator_active;
83 float2 *reduced_output;
95 cudaStream_t internal_stream;
110 unsigned long int last_index;
116 cublasHandle_t handle;
118 cufftComplex zero = {0.0f,0.0f};
120 cufftComplex one = {1.0f,0.0f};
125 int* DIRECT_tone_frquencies;
128 int* DIRECT_tone_phases;
131 size_t DIRECT_current_index;
134 int DIRECT_output_size;
140 float2* direct_input;
143 float2* direct_output;
157 cuComplex onef = {1.f,0.f};
159 cuComplex zerof = {0.f,0.f};
162 size_t DIRECT_FIR_output_size;
168 int process_chirp(float2** __restrict__ input_buffer, float2** __restrict__ output_buffer);
172 int process_pfb(float2** __restrict__ input_buffer, float2** __restrict__ output_buffer);
179 int process_pfb_spec(float2** __restrict__ input_buffer, float2** __restrict__ output_buffer);
183 int process_nodsp(float2** __restrict__ input_buffer, float2** __restrict__ output_buffer);
186 int process_direct(float2** __restrict__ input_buffer, float2** __restrict__ output_buffer);
198 void close_pfb_spec();
205 void upload_multitone_parameters();
RX_buffer_demodulator(param *init_parameters, bool init_diagnostic=false)
Initialization method for the class called when a new command is received. iagnostic allows to print ...
This class handles the DSP of the buffer coming from the the SDR. This is the class to implement to a...
float fcut
PFB cut-off frequency fo the window. 1.f is Nyquist at the higher sampling frequency. this parameter will be movoed to the param struct soon.
int process(float2 **__restrict__ in, float2 **__restrict__ out)
PAcket handler for DSP class. This method process information pointed by the in parameter and write t...
void close()
Wrapper to the correct cleaning function.