gr_ofdm_frame_sink Class Reference
[Signal SinksOFDM Blocks]

Takes an OFDM symbol in, demaps it into bits of 0's and 1's, packs them into packets, and sends to to a message queue sink.

NOTE: The mod input parameter simply chooses a pre-defined demapper/slicer. Eventually, we want to be able to pass in a reference to an object to do the demapping and slicing for a given modulation type. More...

#include <gr_ofdm_frame_sink.h>

Inheritance diagram for gr_ofdm_frame_sink:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 ~gr_ofdm_frame_sink ()
int work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
 just like gr_block::general_work, only this arranges to call consume_each for you

Protected Member Functions

 gr_ofdm_frame_sink (const std::vector< gr_complex > &sym_position, const std::vector< unsigned char > &sym_value_out, gr_msg_queue_sptr target_queue, unsigned int occupied_tones, float phase_gain, float freq_gain)
void enter_search ()
void enter_have_sync ()
void enter_have_header ()
bool header_ok ()
unsigned char slicer (const gr_complex x)
unsigned int demapper (const gr_complex *in, unsigned char *out)
bool set_sym_value_out (const std::vector< gr_complex > &sym_position, const std::vector< unsigned char > &sym_value_out)

Friends

gr_ofdm_frame_sink_sptr gr_make_ofdm_frame_sink (const std::vector< gr_complex > &sym_position, const std::vector< unsigned char > &sym_value_out, gr_msg_queue_sptr target_queue, unsigned int occupied_tones, float phase_gain, float freq_gain)


Detailed Description

Takes an OFDM symbol in, demaps it into bits of 0's and 1's, packs them into packets, and sends to to a message queue sink.

NOTE: The mod input parameter simply chooses a pre-defined demapper/slicer. Eventually, we want to be able to pass in a reference to an object to do the demapping and slicing for a given modulation type.


Constructor & Destructor Documentation

gr_ofdm_frame_sink::gr_ofdm_frame_sink ( const std::vector< gr_complex > &  sym_position,
const std::vector< unsigned char > &  sym_value_out,
gr_msg_queue_sptr  target_queue,
unsigned int  occupied_tones,
float  phase_gain,
float  freq_gain 
) [protected]

gr_ofdm_frame_sink::~gr_ofdm_frame_sink (  ) 


Member Function Documentation

unsigned int gr_ofdm_frame_sink::demapper ( const gr_complex in,
unsigned char *  out 
) [protected]

void gr_ofdm_frame_sink::enter_have_header (  )  [protected]

void gr_ofdm_frame_sink::enter_have_sync (  )  [protected]

void gr_ofdm_frame_sink::enter_search (  )  [protected]

bool gr_ofdm_frame_sink::header_ok (  )  [inline, protected]

bool gr_ofdm_frame_sink::set_sym_value_out ( const std::vector< gr_complex > &  sym_position,
const std::vector< unsigned char > &  sym_value_out 
) [protected]

unsigned char gr_ofdm_frame_sink::slicer ( const gr_complex  x  )  [protected]

int gr_ofdm_frame_sink::work ( int  noutput_items,
gr_vector_const_void_star input_items,
gr_vector_void_star output_items 
) [virtual]

just like gr_block::general_work, only this arranges to call consume_each for you

The user must override work to define the signal processing code

Implements gr_sync_block.


Friends And Related Function Documentation

gr_ofdm_frame_sink_sptr gr_make_ofdm_frame_sink ( const std::vector< gr_complex > &  sym_position,
const std::vector< unsigned char > &  sym_value_out,
gr_msg_queue_sptr  target_queue,
unsigned int  occupied_tones,
float  phase_gain,
float  freq_gain 
) [friend]


The documentation for this class was generated from the following file:

Generated on Wed Jul 29 07:25:57 2009 for GNU Radio 3.2.2 C++ API by  doxygen 1.5.8