00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef INCLUDED_GR_COMPLEX_TO_XXX_H
00024 #define INCLUDED_GR_COMPLEX_TO_XXX_H
00025
00026 #include <gr_sync_block.h>
00027 #include <gr_complex.h>
00028
00029 class gr_complex_to_float;
00030 class gr_complex_to_real;
00031 class gr_complex_to_imag;
00032 class gr_complex_to_mag;
00033 class gr_complex_to_arg;
00034
00035 typedef boost::shared_ptr<gr_complex_to_float> gr_complex_to_float_sptr;
00036 typedef boost::shared_ptr<gr_complex_to_real> gr_complex_to_real_sptr;
00037 typedef boost::shared_ptr<gr_complex_to_imag> gr_complex_to_imag_sptr;
00038 typedef boost::shared_ptr<gr_complex_to_mag> gr_complex_to_mag_sptr;
00039 typedef boost::shared_ptr<gr_complex_to_arg> gr_complex_to_arg_sptr;
00040
00041 gr_complex_to_float_sptr gr_make_complex_to_float (unsigned int vlen=1);
00042 gr_complex_to_real_sptr gr_make_complex_to_real (unsigned int vlen=1);
00043 gr_complex_to_imag_sptr gr_make_complex_to_imag (unsigned int vlen=1);
00044 gr_complex_to_mag_sptr gr_make_complex_to_mag (unsigned int vlen=1);
00045 gr_complex_to_arg_sptr gr_make_complex_to_arg (unsigned int vlen=1);
00046
00052 class gr_complex_to_float : public gr_sync_block
00053 {
00054 friend gr_complex_to_float_sptr gr_make_complex_to_float (unsigned int vlen);
00055 gr_complex_to_float (unsigned int vlen);
00056
00057 unsigned int d_vlen;
00058
00059 public:
00060 virtual int work (int noutput_items,
00061 gr_vector_const_void_star &input_items,
00062 gr_vector_void_star &output_items);
00063 };
00064
00070 class gr_complex_to_real : public gr_sync_block
00071 {
00072 friend gr_complex_to_real_sptr gr_make_complex_to_real (unsigned int vlen);
00073 gr_complex_to_real (unsigned int vlen);
00074
00075 unsigned int d_vlen;
00076
00077 public:
00078 virtual int work (int noutput_items,
00079 gr_vector_const_void_star &input_items,
00080 gr_vector_void_star &output_items);
00081 };
00082
00088 class gr_complex_to_imag : public gr_sync_block
00089 {
00090 friend gr_complex_to_imag_sptr gr_make_complex_to_imag (unsigned int vlen);
00091 gr_complex_to_imag (unsigned int vlen);
00092
00093 unsigned int d_vlen;
00094
00095 public:
00096 virtual int work (int noutput_items,
00097 gr_vector_const_void_star &input_items,
00098 gr_vector_void_star &output_items);
00099 };
00100
00106 class gr_complex_to_mag : public gr_sync_block
00107 {
00108 friend gr_complex_to_mag_sptr gr_make_complex_to_mag (unsigned int vlen);
00109 gr_complex_to_mag (unsigned int vlen);
00110
00111 unsigned int d_vlen;
00112
00113 public:
00114 virtual int work (int noutput_items,
00115 gr_vector_const_void_star &input_items,
00116 gr_vector_void_star &output_items);
00117 };
00118
00124 class gr_complex_to_arg : public gr_sync_block
00125 {
00126 friend gr_complex_to_arg_sptr gr_make_complex_to_arg (unsigned int vlen);
00127 gr_complex_to_arg (unsigned int vlen);
00128
00129 unsigned int d_vlen;
00130
00131 public:
00132 virtual int work (int noutput_items,
00133 gr_vector_const_void_star &input_items,
00134 gr_vector_void_star &output_items);
00135 };
00136
00137 #endif