gr::digital::cpmmod_bc
gr::hier_block2
gnuradio/digital/cpmmod_bc.h
std::shared_ptr< cpmmod_bc > std::shared_ptr<cpmmod_bc> gr::digital::cpmmod_bc::sptr sptr gr::digital::cpmmod_bc::sptr
sptr static sptr gr::digital::cpmmod_bc::make (analog::cpm::cpm_type type, float h, int samples_per_sym, int L, double beta=0.3) make gr::digital::cpmmod_bc::make analog::cpm::cpm_type type float h int samples_per_sym int L double beta 0.3

Make CPM modulator block.

type

The modulation type. Can be one of LREC, LRC, LSRC, TFM or GAUSSIAN. See gr_cpm::phase_response() for a detailed description.

h

The modulation index. $ h \cdot \pi$ is the maximum phase change that can occur between two symbols, i.e., if you only send ones, the phase will increase by $ h \cdot \pi$ every `samples_per_sym` samples. Set this to 0.5 for Minimum Shift Keying variants.

samples_per_sym

Samples per symbol.

L

The length of the phase duration in symbols. For L=1, this yields full- response CPM symbols, for L > 1, partial-response.

beta

For LSRC, this is the rolloff factor. For Gaussian pulses, this is the 3 dB time-bandwidth product.

sptr static sptr gr::digital::cpmmod_bc::make_gmskmod_bc (int samples_per_sym=2, int L=4, double beta=0.3) make_gmskmod_bc gr::digital::cpmmod_bc::make_gmskmod_bc int samples_per_sym 2 int L 4 double beta 0.3

Make GMSK modulator block.

The type is GAUSSIAN and the modulation index for GMSK is 0.5. This are populated automatically by this factory function.

samples_per_sym

Samples per symbol.

L

The length of the phase duration in symbols. For L=1, this yields full- response CPM symbols, for L > 1, partial-response.

beta

For LSRC, this is the rolloff factor. For Gaussian pulses, this is the 3 dB time-bandwidth product.

std::vector< float > virtual std::vector< float > gr::digital::cpmmod_bc::taps () const =0 taps gr::digital::cpmmod_bc::taps

Return the phase response FIR taps.

int virtual int gr::digital::cpmmod_bc::type () const =0 type gr::digital::cpmmod_bc::type

Return the type of CPM modulator.

float virtual float gr::digital::cpmmod_bc::index () const =0 index gr::digital::cpmmod_bc::index

Return the modulation index of the modulator.

int virtual int gr::digital::cpmmod_bc::samples_per_sym () const =0 samples_per_sym gr::digital::cpmmod_bc::samples_per_sym

Return the number of samples per symbol.

int virtual int gr::digital::cpmmod_bc::length () const =0 length gr::digital::cpmmod_bc::length

Return the length of the phase duration (in symbols)

double virtual double gr::digital::cpmmod_bc::beta () const =0 beta gr::digital::cpmmod_bc::beta

Return the value of beta for the modulator.

Generic CPM modulator.

Examples:

- Setting h = 0.5, L = 1, type = LREC yields MSK.

- Setting h = 0.5, type = GAUSSIAN and beta = 0.3 yields GMSK as used in GSM.

The input of this block are symbols from an M-ary alphabet +/-1, +/-3, ..., +/-(M-1). Usually, M = 2 and therefore, the valid inputs are +/-1. The modulator will silently accept any other inputs, though. The output is the phase-modulated signal.

gr::basic_block
gr::digital::cpmmod_bc
gr::hier_block2
gr::messages::msg_accepter
gr::msg_accepter
std::enable_shared_from_this< basic_block >
T
gr::basic_block
d_name
d_symbol_alias
d_symbol_name
d_input_signature
d_output_signature
d_debug_logger
d_logger
msg_queue
d_rpc_vars
d_message_subscribers
gr::digital::cpmmod_bc
gr::hier_block2
hier_message_ports_in
hier_message_ports_out
gr::io_signature
gr::messages::msg_accepter
gr::msg_accepter
std::basic_string< Char >
std::deque< T >
elements
std::enable_shared_from_this< basic_block >
std::map< pmt::pmt_t, msg_queue_t, msg_queue_comparator >
keys
elements
std::shared_ptr< T >
ptr
std::shared_ptr< io_signature >
ptr
std::shared_ptr< logger >
std::shared_ptr< pmt_base >
std::string
std::vector< rpcbasic_sptr >
elements
p
- gr::digital::cpmmod_bc
  _post
- gr::digital::cpmmod_bc
  alias
- gr::digital::cpmmod_bc
  alias_pmt
- gr::digital::cpmmod_bc
  alias_set
- gr::digital::cpmmod_bc
  all_max_output_buffer_p
- gr::digital::cpmmod_bc
  all_min_output_buffer_p
- gr::digital::cpmmod_bc
  basic_block
- gr::digital::cpmmod_bc
  basic_block
- gr::digital::cpmmod_bc
  beta
- gr::digital::cpmmod_bc
  BLACK
- gr::digital::cpmmod_bc
  check_topology
- gr::digital::cpmmod_bc
  color
- gr::digital::cpmmod_bc
  connect
- gr::digital::cpmmod_bc
  connect
- gr::digital::cpmmod_bc
  d_color
- gr::digital::cpmmod_bc
  d_debug_logger
- gr::digital::cpmmod_bc
  d_input_signature
- gr::digital::cpmmod_bc
  d_logger
- gr::digital::cpmmod_bc
  d_message_subscribers
- gr::digital::cpmmod_bc
  d_name
- gr::digital::cpmmod_bc
  d_output_signature
- gr::digital::cpmmod_bc
  d_rpc_set
- gr::digital::cpmmod_bc
  d_rpc_vars
- gr::digital::cpmmod_bc
  d_symbol_alias
- gr::digital::cpmmod_bc
  d_symbol_name
- gr::digital::cpmmod_bc
  d_symbolic_id
- gr::digital::cpmmod_bc
  d_unique_id
- gr::digital::cpmmod_bc
  delete_head_nowait
- gr::digital::cpmmod_bc
  disconnect
- gr::digital::cpmmod_bc
  disconnect
- gr::digital::cpmmod_bc
  disconnect_all
- gr::digital::cpmmod_bc
  dispatch_msg
- gr::digital::cpmmod_bc
  empty_handled_p
- gr::digital::cpmmod_bc
  empty_handled_p
- gr::digital::cpmmod_bc
  empty_p
- gr::digital::cpmmod_bc
  empty_p
- gr::digital::cpmmod_bc
  erase_msg
- gr::digital::cpmmod_bc
  flatten
- gr::digital::cpmmod_bc
  get_iterator
- gr::digital::cpmmod_bc
  get_msg_map
- gr::digital::cpmmod_bc
  GREY
- gr::digital::cpmmod_bc
  has_msg_handler
- gr::digital::cpmmod_bc
  has_msg_port
- gr::digital::cpmmod_bc
  hier_block2
- gr::digital::cpmmod_bc
  hier_block2
- gr::digital::cpmmod_bc
  hier_message_ports_in
- gr::digital::cpmmod_bc
  hier_message_ports_out
- gr::digital::cpmmod_bc
  identifier
- gr::digital::cpmmod_bc
  index
- gr::digital::cpmmod_bc
  input_signature
- gr::digital::cpmmod_bc
  insert_tail
- gr::digital::cpmmod_bc
  is_rpc_set
- gr::digital::cpmmod_bc
  length
- gr::digital::cpmmod_bc
  lock
- gr::digital::cpmmod_bc
  log_level
- gr::digital::cpmmod_bc
  make
- gr::digital::cpmmod_bc
  make_gmskmod_bc
- gr::digital::cpmmod_bc
  max_output_buffer
- gr::digital::cpmmod_bc
  message_port_is_hier
- gr::digital::cpmmod_bc
  message_port_is_hier_in
- gr::digital::cpmmod_bc
  message_port_is_hier_out
- gr::digital::cpmmod_bc
  message_port_pub
- gr::digital::cpmmod_bc
  message_port_register_hier_in
- gr::digital::cpmmod_bc
  message_port_register_hier_out
- gr::digital::cpmmod_bc
  message_port_register_in
- gr::digital::cpmmod_bc
  message_port_register_out
- gr::digital::cpmmod_bc
  message_port_sub
- gr::digital::cpmmod_bc
  message_port_unsub
- gr::digital::cpmmod_bc
  message_ports_in
- gr::digital::cpmmod_bc
  message_ports_out
- gr::digital::cpmmod_bc
  message_subscribers
- gr::digital::cpmmod_bc
  min_output_buffer
- gr::digital::cpmmod_bc
  msg_accepter
- gr::digital::cpmmod_bc
  msg_connect
- gr::digital::cpmmod_bc
  msg_connect
- gr::digital::cpmmod_bc
  msg_disconnect
- gr::digital::cpmmod_bc
  msg_disconnect
- gr::digital::cpmmod_bc
  msg_queue
- gr::digital::cpmmod_bc
  name
- gr::digital::cpmmod_bc
  nmsgs
- gr::digital::cpmmod_bc
  opaque_self
- gr::digital::cpmmod_bc
  output_signature
- gr::digital::cpmmod_bc
  post
- gr::digital::cpmmod_bc
  processor_affinity
- gr::digital::cpmmod_bc
  rpc_set
- gr::digital::cpmmod_bc
  samples_per_sym
- gr::digital::cpmmod_bc
  self
- gr::digital::cpmmod_bc
  set_block_alias
- gr::digital::cpmmod_bc
  set_color
- gr::digital::cpmmod_bc
  set_input_signature
- gr::digital::cpmmod_bc
  set_log_level
- gr::digital::cpmmod_bc
  set_max_output_buffer
- gr::digital::cpmmod_bc
  set_max_output_buffer
- gr::digital::cpmmod_bc
  set_min_output_buffer
- gr::digital::cpmmod_bc
  set_min_output_buffer
- gr::digital::cpmmod_bc
  set_msg_handler
- gr::digital::cpmmod_bc
  set_output_signature
- gr::digital::cpmmod_bc
  set_processor_affinity
- gr::digital::cpmmod_bc
  setup_rpc
- gr::digital::cpmmod_bc
  shared_from_base
- gr::digital::cpmmod_bc
  sptr
- gr::digital::cpmmod_bc
  symbol_name
- gr::digital::cpmmod_bc
  symbolic_id
- gr::digital::cpmmod_bc
  taps
- gr::digital::cpmmod_bc
  to_basic_block
- gr::digital::cpmmod_bc
  to_hier_block2
- gr::digital::cpmmod_bc
  type
- gr::digital::cpmmod_bc
  unique_id
- gr::digital::cpmmod_bc
  unlock
- gr::digital::cpmmod_bc
  unset_processor_affinity
- gr::digital::cpmmod_bc
  vcolor
- gr::digital::cpmmod_bc
  WHITE
- gr::digital::cpmmod_bc
  ~basic_block
- gr::digital::cpmmod_bc
  ~hier_block2
- gr::digital::cpmmod_bc
  ~msg_accepter