howto_interp_gscrambler_cc.h

#ifndef INCLUDED_HOWTO_INTERP_GSCRAMBLER_CC_H
#define INCLUDED_HOWTO_INTERP_GSCRAMBLER_CC_H

#include <gr_sync_interpolator.h>
#include "gri_glfsr.h"

class howto_interp_gscrambler_cc;
typedef boost::shared_ptr<howto_interp_gscrambler_cc> howto_interp_gscrambler_cc_sptr;
howto_interp_gscrambler_cc_sptr howto_make_interp_gscrambler_cc (unsigned interpolation, int mask, int seed, int len);


class howto_interp_gscrambler_cc : public gr_sync_interpolator
{
 private:
  friend howto_interp_gscrambler_cc_sptr howto_make_interp_gscrambler_cc (unsigned interpolation, int degree, int mask, int seed);

  int        d_len;
  float      d_pn;
  gri_glfsr *d_reference;
  howto_interp_gscrambler_cc(unsigned interpolation, int degree, int mask, int seed);
  
 public:
  ~howto_interp_gscrambler_cc ();

  int work (int noutput_items,
	    gr_vector_const_void_star &input_items,
	    gr_vector_void_star &output_items);
};

#endif

最終更新:2011年06月18日 02:52