GNU Radio Manual and C++ API Reference  3.8.1.0
The Free & Open Software Radio Ecosystem
gr::blocks Namespace Reference

Namespaces

 kernel
 
 pdu
 

Classes

class  abs_blk
 output[m] = abs(input[m]) for all M streams. More...
 
class  add_blk
 output = sum(input[0], input[1], ..., input[M-1]) More...
 
class  add_const_bb
 output = input + constant More...
 
class  add_const_cc
 output = input + constant More...
 
class  add_const_ff
 output = input + constant More...
 
class  add_const_ii
 output = input + constant More...
 
class  add_const_ss
 output = input + constant More...
 
class  add_const_v
 output[m] = input[m] + constant vector for all M streams. More...
 
class  and_blk
 output = input[0] & input[1] & ... & input[M-1] More...
 
class  and_const
 output[m] = input[m] & value for all M streams. More...
 
class  annotator_1to1
 1-to-1 stream annotator testing block. FOR TESTING PURPOSES ONLY. More...
 
class  annotator_alltoall
 All-to-all stream annotator testing block. FOR TESTING PURPOSES ONLY. More...
 
class  annotator_raw
 raw stream annotator testing block. More...
 
class  argmax
 Compares vectors from multiple streams and determines the index in the vector and stream number where the maximum value occurred. More...
 
class  bin_statistics_f
 control scanning and record frequency domain statistics More...
 
class  burst_tagger
 Sets a burst on/off tag based on the value of the trigger input. More...
 
class  char_to_float
 Convert stream of chars to a stream of float. More...
 
class  char_to_short
 Convert stream of chars to a stream of shorts. More...
 
class  check_lfsr_32k_s
 sink that checks if its input stream consists of a lfsr_32k sequence. More...
 
class  complex_to_arg
 complex in, arg (arctan) out (float) More...
 
class  complex_to_float
 Convert a stream of gr_complex to 1 or 2 streams of float. More...
 
class  complex_to_imag
 Produces the imaginary part (as a float0 of a complex stream. More...
 
class  complex_to_interleaved_char
 Convert stream of complex to a stream of interleaved chars. More...
 
class  complex_to_interleaved_short
 Convert stream of complex to a stream of interleaved shorts. More...
 
class  complex_to_mag
 complex in, magnitude out (float) More...
 
class  complex_to_mag_squared
 complex in, magnitude squared out (float) More...
 
class  complex_to_magphase
 Convert a stream of gr_complex to magnitude and phase (both floats) More...
 
class  complex_to_real
 Produces the real part (as a float0 of a complex stream. More...
 
class  conjugate_cc
 output = complex conjugate of input More...
 
class  control_loop
 A second-order control loop implementation class. More...
 
class  copy
 output[i] = input[i] More...
 
class  ctrlport_probe2_b
 A ControlPort probe to export vectors of signals. More...
 
class  ctrlport_probe2_c
 A ControlPort probe to export vectors of signals. More...
 
class  ctrlport_probe2_f
 A ControlPort probe to export vectors of signals. More...
 
class  ctrlport_probe2_i
 A ControlPort probe to export vectors of signals. More...
 
class  ctrlport_probe2_s
 A ControlPort probe to export vectors of signals. More...
 
class  ctrlport_probe_c
 A ControlPort probe to export vectors of signals. More...
 
class  deinterleave
 deinterleave an input block of samples into N outputs. More...
 
class  delay
 delay the input by a certain number of samplesPositive delays insert zero items at the beginning of the stream. Negative delays discard items from the stream. More...
 
class  divide
 output = input[0] / input[1] / ... / input[M-1] More...
 
class  endian_swap
 Convert stream of items into their byte swapped version. More...
 
class  exponentiate_const_cci
 Exponentiates a complex stream with an integer exponent. More...
 
class  file_descriptor_sink
 Write stream to file descriptor. More...
 
class  file_descriptor_source
 Read stream from file descriptor. More...
 
class  file_meta_sink
 Write stream to file with meta-data headers. More...
 
class  file_meta_source
 Reads stream from file with meta-data headers. Headers are parsed into tags. More...
 
class  file_sink
 Write stream to file. More...
 
class  file_sink_base
 Common base class for file sinks. More...
 
class  file_source
 Read stream from file. More...
 
class  float_to_char
 Convert stream of floats to a stream of char. More...
 
class  float_to_complex
 one or two floats in, complex out More...
 
class  float_to_int
 Convert stream of floats to a stream of ints. More...
 
class  float_to_short
 Convert stream of floats to a stream of shorts. More...
 
class  float_to_uchar
 Convert stream of floats to a stream of unsigned chars. More...
 
class  head
 copies the first N items to the output then signals done More...
 
class  int_to_float
 Convert stream of ints to a stream of floats. More...
 
class  integrate
 Integrate successive samples and decimate. More...
 
class  interleave
 interleave N inputs into a single output More...
 
class  interleaved_char_to_complex
 Convert stream of interleaved chars to a stream of complex. More...
 
class  interleaved_short_to_complex
 Convert stream of interleaved shorts to a stream of complex. More...
 
class  keep_m_in_n
 decimate a stream, keeping the first m items out of every n starting after offset items. More...
 
class  keep_one_in_n
 decimate a stream, keeping the last item out of every n. More...
 
class  lfsr_15_1_0
 Linear Feedback Shift Register using primitive polynomial x^15 + x + 1. More...
 
class  lfsr_32k
 generate pseudo-random sequence of length 32768 bits. More...
 
class  lfsr_32k_source_s
 LFSR pseudo-random source with period of 2^15 bits (2^11 shorts) More...
 
class  magphase_to_complex
 two floats in (mag and phase), complex out More...
 
class  max_blk
 Compares vectors from multiple streams and determines the maximum value from each vector over all streams. More...
 
class  message_debug
 Debug block for the message passing system. More...
 
class  message_strobe
 Send message at defined interval. More...
 
class  message_strobe_random
 Send message at defined interval. More...
 
class  min_blk
 Compares vectors from multiple streams and determines the minimum value from each vector over all streams. More...
 
class  moving_average
 output is the moving sum of the last N samples, scaled by the scale factor More...
 
class  multiply
 output = prod (input_0, input_1, ...) More...
 
class  multiply_by_tag_value_cc
 output = input * complex constant More...
 
class  multiply_conjugate_cc
 Multiplies stream 0 by the complex conjugate of stream 1. More...
 
class  multiply_const
 output = input * constant More...
 
class  multiply_const_v
 output = input * constant vector (element-wise) More...
 
class  multiply_matrix
 Matrix multiplexer/multiplier: y(k) = A x(k)This block is similar to gr::blocks::multiply_const_ff, the difference being it can handle several inputs and outputs, and the input-to-output relation can be described by the following mathematical equation:

\[ \mathbf{y}(k) = \mathbf{A} \mathbf{x}(k) \, , \, y \in \mathbb{R}^N, \mathbf{x} \in \mathbb{R}^M, A \in \mathbb{R}^{N \times M} \]

$\mathbf{y}(k)$ and $\mathbf{x}(i)$ are column-vectors describing the elements on the input port at time step $k$ (this is a sync block with no memory). More...

 
class  mute_blk
 output = input or zero if muted. More...
 
class  nlog10_ff
 output = n*log10(input) + k More...
 
class  nop
 Does nothing. Used for testing only. More...
 
class  not_blk
 output = ~inputbitwise boolean not of input streams. More...
 
class  null_sink
 Bit bucket. Use as a termination point when a sink is required and we don't want to do anything real. More...
 
class  null_source
 A source of zeros used mainly for testing. More...
 
class  or_blk
 output = input_0 | input_1 | , ... | input_N)Bitwise boolean or across all input streams. More...
 
class  pack_k_bits_bb
 Converts a stream of bytes with 1 bit in the LSB to a byte with k relevant bits. More...
 
class  packed_to_unpacked
 Convert a stream of packed bytes or shorts to stream of unpacked bytes or shorts. More...
 
class  patterned_interleaver
 Interleave items based on the provided vector pattern. More...
 
class  pdu_filter
 Propagates only pdus containing k=>v in meta. More...
 
class  pdu_remove
 remove key k in pdu's meta field and pass on More...
 
class  pdu_set
 Set k=>v in pdu's meta field and pass on. More...
 
class  pdu_to_tagged_stream
 Turns received PDUs into a tagged stream of items. More...
 
class  peak_detector
 Detect the peak of a signal. More...
 
class  peak_detector2_fb
 Detect the peak of a signal. More...
 
class  plateau_detector_fb
 Detects a plateau and marks the middle. More...
 
class  probe_rate
 throughput measurement More...
 
class  probe_signal
 Sink that allows a sample to be grabbed from Python. More...
 
class  probe_signal_v
 Sink that allows a vector of samples to be grabbed from Python. More...
 
class  random_pdu
 Sends a random PDU at intervals. More...
 
class  regenerate_bb
 Detect the peak of a signal and repeat every period samples. More...
 
class  repack_bits_bb
 Repack k bits from the input stream onto l bits of the output stream. More...
 
class  repeat
 repeat each input repeat timesMessage Ports: More...
 
class  rms_cf
 RMS average power. More...
 
class  rms_ff
 RMS average power. More...
 
class  rotator
 
class  rotator_cc
 Complex rotator. More...
 
class  sample_and_hold
 sample and hold circuit More...
 
class  selector
 output[output_index][i] = input[input_index][i] More...
 
class  short_to_char
 Convert stream of shorts to a stream of chars. More...
 
class  short_to_float
 Convert stream of shorts to a stream of floats. More...
 
class  skiphead
 skips the first N items, from then on copies items to the output More...
 
class  socket_pdu
 Creates socket interface and translates traffic to PDUs. More...
 
class  stream_mux
 Stream muxing block to multiplex many streams into one with a specified format. More...
 
class  stream_to_streams
 convert a stream of items into a N streams of items More...
 
class  stream_to_tagged_stream
 Converts a regular stream into a tagged stream.All this block does is add length tags in regular intervals. It can be used to connect a regular stream to a gr::tagged_stream_block. More...
 
class  stream_to_vector
 convert a stream of items into a stream of gnuradio/blocks containing nitems_per_block More...
 
class  streams_to_stream
 Convert N streams of 1 item into a 1 stream of N items. More...
 
class  streams_to_vector
 convert N streams of items to 1 stream of vector length N More...
 
class  stretch_ff
 adjust y-range of an input vector by mapping to range (max-of-input, stipulated-min). Primarily for spectral signature matching by normalizing spectrum dynamic ranges. More...
 
class  sub
 output = input_0 - input_1 - ...) More...
 
class  tag_debug
 Bit bucket that prints out any tag received. More...
 
class  tag_gate
 Control tag propagation.Use this block to stop tags from propagating. More...
 
class  tag_share
 Adds tags from Input 1 onto Input 0's stream. More...
 
class  tagged_file_sink
 A file sink that uses tags to save files. More...
 
class  tagged_stream_align
 Align a stream to a tagged stream item. More...
 
class  tagged_stream_multiply_length
 Allows scaling of a tagged stream length tag. More...
 
class  tagged_stream_mux
 Combines tagged streams. More...
 
class  tagged_stream_to_pdu
 Turns received stream data and tags into PDUs and sends them through a message port.The sent message is a PMT-pair (created by pmt::cons()). The first element is a dictionary containing all the tags. The second is a vector containing the actual data. More...
 
class  tags_strobe
 Send tags at defined interval. More...
 
class  tcp_server_sink
 Send stream through a TCP socket. More...
 
class  test_tag_variable_rate_ff
 Used for testing tag propagation.This block resamples the stream by a factor that starts at 0.5 but varies around by some random walk. The relative rate of the block is initialized to 0.5 and the random number generator is seeded based on the time. For each input, if the random number is >= 0.5, the relative rate is increased by update_step; otherwise, it is decreased by update_step. More...
 
class  threshold_ff
 Output a 1 or zero based on a threshold value. More...
 
class  throttle
 throttle flow of samples such that the average rate does not exceed samples_per_sec. More...
 
class  transcendental
 A block that performs various transcendental math operations. More...
 
class  tsb_vector_sink
 A vector sink for tagged streams. More...
 
class  tuntap_pdu
 Creates TUNTAP interface and translates traffic to PDUs. More...
 
class  uchar_to_float
 Convert stream of unsigned chars to a stream of floats. More...
 
class  udp_sink
 Write stream to an UDP socket. More...
 
class  udp_source
 Read stream from an UDP socket. More...
 
class  unpack_k_bits_bb
 Converts a byte with k relevant bits to k output bytes with 1 bit in the LSB. More...
 
class  unpacked_to_packed
 Convert a stream of unpacked bytes or shorts into a stream of packed bytes or shorts. More...
 
class  vco_c
 VCO - Voltage controlled oscillator. More...
 
class  vco_f
 VCO - Voltage controlled oscillator. More...
 
class  vector_insert
 source of T's that gets its data from a vector More...
 
class  vector_map
 Maps elements from a set of input vectors to a set of output vectors. More...
 
class  vector_sink
 T sink that writes to a vector. More...
 
class  vector_source
 Source that streams T items based on the input data vector. More...
 
class  vector_to_stream
 convert a stream of gnuradio/blocks of nitems_per_block items into a stream of items More...
 
class  vector_to_streams
 Convert 1 stream of vectors of length N to N streams of items. More...
 
class  wavfile_sink
 Write stream to a Microsoft PCM (.wav) file. More...
 
class  wavfile_source
 Read stream from a Microsoft PCM (.wav) file, output floats. More...
 
class  xor_blk
 output = input_0 ^ input_1 ^ , ... ^ input_N)Bitwise boolean xor across all input streams. More...
 

Typedefs

typedef abs_blk< std::int16_t > abs_ss
 
typedef abs_blk< std::int32_t > abs_ii
 
typedef abs_blk< float > abs_ff
 
typedef add_blk< std::int16_t > add_ss
 
typedef add_blk< std::int32_t > add_ii
 
typedef add_blk< gr_complexadd_cc
 
typedef add_blk< float > add_ff
 
typedef add_const_v< std::uint8_t > add_const_vbb
 
typedef add_const_v< std::int16_t > add_const_vss
 
typedef add_const_v< std::int32_t > add_const_vii
 
typedef add_const_v< float > add_const_vff
 
typedef add_const_v< gr_complexadd_const_vcc
 
typedef and_blk< std::uint8_t > and_bb
 
typedef and_blk< std::int16_t > and_ss
 
typedef and_blk< std::int32_t > and_ii
 
typedef and_const< std::uint8_t > and_const_bb
 
typedef and_const< std::int16_t > and_const_ss
 
typedef and_const< std::int32_t > and_const_ii
 
typedef argmax< float > argmax_fs
 
typedef argmax< std::int32_t > argmax_is
 
typedef argmax< std::int16_t > argmax_ss
 
typedef divide< std::int16_t > divide_ss
 
typedef divide< std::int32_t > divide_ii
 
typedef divide< float > divide_ff
 
typedef divide< gr_complexdivide_cc
 
typedef integrate< std::int16_t > integrate_ss
 
typedef integrate< std::int32_t > integrate_ii
 
typedef integrate< float > integrate_ff
 
typedef integrate< gr_complexintegrate_cc
 
typedef max_blk< std::int16_t > max_ss
 
typedef max_blk< std::int32_t > max_ii
 
typedef max_blk< float > max_ff
 
typedef min_blk< std::int16_t > min_ss
 
typedef min_blk< std::int32_t > min_ii
 
typedef min_blk< float > min_ff
 
typedef moving_average< std::int16_t > moving_average_ss
 
typedef moving_average< std::int32_t > moving_average_ii
 
typedef moving_average< float > moving_average_ff
 
typedef moving_average< gr_complexmoving_average_cc
 
typedef multiply< std::int16_t > multiply_ss
 
typedef multiply< std::int32_t > multiply_ii
 
typedef multiply< float > multiply_ff
 
typedef multiply< gr_complexmultiply_cc
 
typedef multiply_const< std::int16_t > multiply_const_ss
 
typedef multiply_const< std::int32_t > multiply_const_ii
 
typedef multiply_const< float > multiply_const_ff
 
typedef multiply_const< gr_complexmultiply_const_cc
 
typedef multiply_const_v< std::int16_t > multiply_const_vss
 
typedef multiply_const_v< std::int32_t > multiply_const_vii
 
typedef multiply_const_v< float > multiply_const_vff
 
typedef multiply_const_v< gr_complexmultiply_const_vcc
 
typedef multiply_matrix< float > multiply_matrix_ff
 
typedef multiply_matrix< gr_complexmultiply_matrix_cc
 
typedef mute_blk< std::int16_t > mute_ss
 
typedef mute_blk< std::int32_t > mute_ii
 
typedef mute_blk< float > mute_ff
 
typedef mute_blk< gr_complexmute_cc
 
typedef not_blk< std::uint8_t > not_bb
 
typedef not_blk< std::int16_t > not_ss
 
typedef not_blk< std::int32_t > not_ii
 
typedef or_blk< short > or_ss
 
typedef or_blk< int > or_ii
 
typedef or_blk< char > or_bb
 
typedef packed_to_unpacked< std::uint8_t > packed_to_unpacked_bb
 
typedef packed_to_unpacked< std::int16_t > packed_to_unpacked_ss
 
typedef packed_to_unpacked< std::int32_t > packed_to_unpacked_ii
 
typedef peak_detector< float > peak_detector_fb
 
typedef peak_detector< std::int32_t > peak_detector_ib
 
typedef peak_detector< std::int16_t > peak_detector_sb
 
typedef probe_signal< std::uint8_t > probe_signal_b
 
typedef probe_signal< std::int16_t > probe_signal_s
 
typedef probe_signal< std::int32_t > probe_signal_i
 
typedef probe_signal< float > probe_signal_f
 
typedef probe_signal< gr_complexprobe_signal_c
 
typedef probe_signal_v< std::uint8_t > probe_signal_vb
 
typedef probe_signal_v< std::int16_t > probe_signal_vs
 
typedef probe_signal_v< std::int32_t > probe_signal_vi
 
typedef probe_signal_v< float > probe_signal_vf
 
typedef probe_signal_v< gr_complexprobe_signal_vc
 
typedef sample_and_hold< std::uint8_t > sample_and_hold_bb
 
typedef sample_and_hold< std::int16_t > sample_and_hold_ss
 
typedef sample_and_hold< std::int32_t > sample_and_hold_ii
 
typedef sample_and_hold< float > sample_and_hold_ff
 
typedef sub< std::int16_t > sub_ss
 
typedef sub< std::int32_t > sub_ii
 
typedef sub< gr_complexsub_cc
 
typedef sub< float > sub_ff
 
typedef tsb_vector_sink< std::uint8_t > tsb_vector_sink_b
 
typedef tsb_vector_sink< std::uint32_t > tsb_vector_sink_i
 
typedef tsb_vector_sink< std::uint16_t > tsb_vector_sink_s
 
typedef tsb_vector_sink< float > tsb_vector_sink_f
 
typedef tsb_vector_sink< gr_complextsb_vector_sink_c
 
typedef unpacked_to_packed< std::uint8_t > unpacked_to_packed_bb
 
typedef unpacked_to_packed< std::int16_t > unpacked_to_packed_ss
 
typedef unpacked_to_packed< std::int32_t > unpacked_to_packed_ii
 
typedef vector_insert< std::uint8_t > vector_insert_b
 
typedef vector_insert< std::int16_t > vector_insert_s
 
typedef vector_insert< std::int32_t > vector_insert_i
 
typedef vector_insert< float > vector_insert_f
 
typedef vector_insert< gr_complexvector_insert_c
 
typedef vector_sink< std::uint8_t > vector_sink_b
 
typedef vector_sink< std::int16_t > vector_sink_s
 
typedef vector_sink< std::int32_t > vector_sink_i
 
typedef vector_sink< float > vector_sink_f
 
typedef vector_sink< gr_complexvector_sink_c
 
typedef vector_source< std::uint8_t > vector_source_b
 
typedef vector_source< std::int16_t > vector_source_s
 
typedef vector_source< std::int32_t > vector_source_i
 
typedef vector_source< float > vector_source_f
 
typedef vector_source< gr_complexvector_source_c
 
typedef xor_blk< std::uint8_t > xor_bb
 
typedef xor_blk< std::int16_t > xor_ss
 
typedef xor_blk< std::int32_t > xor_ii
 

Enumerations

enum  gr_file_types {
  GR_FILE_BYTE = 0, GR_FILE_CHAR = 0, GR_FILE_SHORT = 1, GR_FILE_INT,
  GR_FILE_LONG, GR_FILE_LONG_LONG, GR_FILE_FLOAT, GR_FILE_DOUBLE
}
 
enum  message_strobe_random_distribution_t { STROBE_POISSON = 1, STROBE_GAUSSIAN = 2, STROBE_UNIFORM = 3 }
 

Functions

static float tanhf_lut (float x)
 
BLOCKS_API unsigned int count_bits8 (unsigned int x)
 return number of set bits in the low 8 bits of x More...
 
BLOCKS_API unsigned int count_bits16 (unsigned int x)
 return number of set bits in the low 16 bits of x More...
 
BLOCKS_API unsigned int count_bits32 (unsigned int x)
 return number of set bits in the low 32 bits of x More...
 
BLOCKS_API unsigned int count_bits64 (unsigned long long int x)
 return number of set bits in a 64-bit word More...
 
template<unsigned int k>
static int log2_const ()
 
template<>
int log2_const< 1 > ()
 
template<>
int log2_const< 2 > ()
 
template<>
int log2_const< 4 > ()
 
template<>
int log2_const< 8 > ()
 
template<>
int log2_const< 16 > ()
 
template<>
int log2_const< 32 > ()
 
template<>
int log2_const< 64 > ()
 
template<>
int log2_const< 128 > ()
 
template<>
int log2_const< 256 > ()
 
template<>
int log2_const< 512 > ()
 
template<>
int log2_const< 1024 > ()
 
BLOCKS_API bool wavheader_parse (FILE *fp, unsigned int &sample_rate, int &nchans, int &bytes_per_sample, int &first_sample_pos, unsigned int &samples_per_chan)
 Read signal information from a given WAV file. More...
 
BLOCKS_API short int wav_read_sample (FILE *fp, int bytes_per_sample)
 Read one sample from an open WAV file at the current position. More...
 
BLOCKS_API bool wavheader_write (FILE *fp, unsigned int sample_rate, int nchans, int bytes_per_sample)
 Write a valid RIFF file header. More...
 
BLOCKS_API void wav_write_sample (FILE *fp, short int sample, int bytes_per_sample)
 Write one sample to an open WAV file at the current position. More...
 
BLOCKS_API bool wavheader_complete (FILE *fp, unsigned int byte_count)
 Complete a WAV header. More...
 

Variables

static float tanh_lut_table [256]
 
const char METADATA_VERSION = 0
 
const size_t METADATA_HEADER_SIZE = 149
 

Typedef Documentation

◆ abs_ff

typedef abs_blk<float> gr::blocks::abs_ff

◆ abs_ii

typedef abs_blk<std::int32_t> gr::blocks::abs_ii

◆ abs_ss

typedef abs_blk<std::int16_t> gr::blocks::abs_ss

◆ add_cc

◆ add_const_vbb

typedef add_const_v<std::uint8_t> gr::blocks::add_const_vbb

◆ add_const_vcc

◆ add_const_vff

◆ add_const_vii

typedef add_const_v<std::int32_t> gr::blocks::add_const_vii

◆ add_const_vss

typedef add_const_v<std::int16_t> gr::blocks::add_const_vss

◆ add_ff

typedef add_blk<float> gr::blocks::add_ff

◆ add_ii

typedef add_blk<std::int32_t> gr::blocks::add_ii

◆ add_ss

typedef add_blk<std::int16_t> gr::blocks::add_ss

◆ and_bb

typedef and_blk<std::uint8_t> gr::blocks::and_bb

◆ and_const_bb

typedef and_const<std::uint8_t> gr::blocks::and_const_bb

◆ and_const_ii

typedef and_const<std::int32_t> gr::blocks::and_const_ii

◆ and_const_ss

typedef and_const<std::int16_t> gr::blocks::and_const_ss

◆ and_ii

typedef and_blk<std::int32_t> gr::blocks::and_ii

◆ and_ss

typedef and_blk<std::int16_t> gr::blocks::and_ss

◆ argmax_fs

typedef argmax<float> gr::blocks::argmax_fs

◆ argmax_is

typedef argmax<std::int32_t> gr::blocks::argmax_is

◆ argmax_ss

typedef argmax<std::int16_t> gr::blocks::argmax_ss

◆ divide_cc

◆ divide_ff

typedef divide<float> gr::blocks::divide_ff

◆ divide_ii

typedef divide<std::int32_t> gr::blocks::divide_ii

◆ divide_ss

typedef divide<std::int16_t> gr::blocks::divide_ss

◆ integrate_cc

◆ integrate_ff

◆ integrate_ii

typedef integrate<std::int32_t> gr::blocks::integrate_ii

◆ integrate_ss

typedef integrate<std::int16_t> gr::blocks::integrate_ss

◆ max_ff

typedef max_blk<float> gr::blocks::max_ff

◆ max_ii

typedef max_blk<std::int32_t> gr::blocks::max_ii

◆ max_ss

typedef max_blk<std::int16_t> gr::blocks::max_ss

◆ min_ff

typedef min_blk<float> gr::blocks::min_ff

◆ min_ii

typedef min_blk<std::int32_t> gr::blocks::min_ii

◆ min_ss

typedef min_blk<std::int16_t> gr::blocks::min_ss

◆ moving_average_cc

◆ moving_average_ff

◆ moving_average_ii

◆ moving_average_ss

◆ multiply_cc

◆ multiply_const_cc

◆ multiply_const_ff

◆ multiply_const_ii

◆ multiply_const_ss

◆ multiply_const_vcc

◆ multiply_const_vff

◆ multiply_const_vii

◆ multiply_const_vss

◆ multiply_ff

◆ multiply_ii

typedef multiply<std::int32_t> gr::blocks::multiply_ii

◆ multiply_matrix_cc

◆ multiply_matrix_ff

◆ multiply_ss

typedef multiply<std::int16_t> gr::blocks::multiply_ss

◆ mute_cc

◆ mute_ff

typedef mute_blk<float> gr::blocks::mute_ff

◆ mute_ii

typedef mute_blk<std::int32_t> gr::blocks::mute_ii

◆ mute_ss

typedef mute_blk<std::int16_t> gr::blocks::mute_ss

◆ not_bb

typedef not_blk<std::uint8_t> gr::blocks::not_bb

◆ not_ii

typedef not_blk<std::int32_t> gr::blocks::not_ii

◆ not_ss

typedef not_blk<std::int16_t> gr::blocks::not_ss

◆ or_bb

typedef or_blk<char> gr::blocks::or_bb

◆ or_ii

typedef or_blk<int> gr::blocks::or_ii

◆ or_ss

typedef or_blk<short> gr::blocks::or_ss

◆ packed_to_unpacked_bb

◆ packed_to_unpacked_ii

◆ packed_to_unpacked_ss

◆ peak_detector_fb

◆ peak_detector_ib

◆ peak_detector_sb

◆ probe_signal_b

◆ probe_signal_c

◆ probe_signal_f

◆ probe_signal_i

◆ probe_signal_s

◆ probe_signal_vb

◆ probe_signal_vc

◆ probe_signal_vf

◆ probe_signal_vi

◆ probe_signal_vs

◆ sample_and_hold_bb

◆ sample_and_hold_ff

◆ sample_and_hold_ii

◆ sample_and_hold_ss

◆ sub_cc

◆ sub_ff

typedef sub<float> gr::blocks::sub_ff

◆ sub_ii

typedef sub<std::int32_t> gr::blocks::sub_ii

◆ sub_ss

typedef sub<std::int16_t> gr::blocks::sub_ss

◆ tsb_vector_sink_b

◆ tsb_vector_sink_c

◆ tsb_vector_sink_f

◆ tsb_vector_sink_i

◆ tsb_vector_sink_s

◆ unpacked_to_packed_bb

◆ unpacked_to_packed_ii

◆ unpacked_to_packed_ss

◆ vector_insert_b

◆ vector_insert_c

◆ vector_insert_f

◆ vector_insert_i

◆ vector_insert_s

◆ vector_sink_b

typedef vector_sink<std::uint8_t> gr::blocks::vector_sink_b

◆ vector_sink_c

◆ vector_sink_f

◆ vector_sink_i

typedef vector_sink<std::int32_t> gr::blocks::vector_sink_i

◆ vector_sink_s

typedef vector_sink<std::int16_t> gr::blocks::vector_sink_s

◆ vector_source_b

◆ vector_source_c

◆ vector_source_f

◆ vector_source_i

◆ vector_source_s

◆ xor_bb

typedef xor_blk<std::uint8_t> gr::blocks::xor_bb

◆ xor_ii

typedef xor_blk<std::int32_t> gr::blocks::xor_ii

◆ xor_ss

typedef xor_blk<std::int16_t> gr::blocks::xor_ss

Enumeration Type Documentation

◆ gr_file_types

Enumerator
GR_FILE_BYTE 
GR_FILE_CHAR 
GR_FILE_SHORT 
GR_FILE_INT 
GR_FILE_LONG 
GR_FILE_LONG_LONG 
GR_FILE_FLOAT 
GR_FILE_DOUBLE 

◆ message_strobe_random_distribution_t

Enumerator
STROBE_POISSON 
STROBE_GAUSSIAN 
STROBE_UNIFORM 

Function Documentation

◆ count_bits16()

BLOCKS_API unsigned int gr::blocks::count_bits16 ( unsigned int  x)

return number of set bits in the low 16 bits of x

◆ count_bits32()

BLOCKS_API unsigned int gr::blocks::count_bits32 ( unsigned int  x)

return number of set bits in the low 32 bits of x

◆ count_bits64()

BLOCKS_API unsigned int gr::blocks::count_bits64 ( unsigned long long int  x)

return number of set bits in a 64-bit word

◆ count_bits8()

BLOCKS_API unsigned int gr::blocks::count_bits8 ( unsigned int  x)

return number of set bits in the low 8 bits of x

◆ log2_const()

template<unsigned int k>
static int gr::blocks::log2_const ( )
inlinestatic

◆ log2_const< 1 >()

template<>
int gr::blocks::log2_const< 1 > ( )
inline

◆ log2_const< 1024 >()

template<>
int gr::blocks::log2_const< 1024 > ( )
inline

◆ log2_const< 128 >()

template<>
int gr::blocks::log2_const< 128 > ( )
inline

◆ log2_const< 16 >()

template<>
int gr::blocks::log2_const< 16 > ( )
inline

◆ log2_const< 2 >()

template<>
int gr::blocks::log2_const< 2 > ( )
inline

◆ log2_const< 256 >()

template<>
int gr::blocks::log2_const< 256 > ( )
inline

◆ log2_const< 32 >()

template<>
int gr::blocks::log2_const< 32 > ( )
inline

◆ log2_const< 4 >()

template<>
int gr::blocks::log2_const< 4 > ( )
inline

◆ log2_const< 512 >()

template<>
int gr::blocks::log2_const< 512 > ( )
inline

◆ log2_const< 64 >()

template<>
int gr::blocks::log2_const< 64 > ( )
inline

◆ log2_const< 8 >()

template<>
int gr::blocks::log2_const< 8 > ( )
inline

◆ tanhf_lut()

static float gr::blocks::tanhf_lut ( float  x)
inlinestatic

A look-up table (LUT) tanh calcuation. This function returns an estimate to tanh(x) based on a 256-point LUT between -2 and

  1. If x < -2, it returns -1; if > 2, it returns 1.

This LUT form of the tanh is "hidden" in this code because it is likely too coarse an estimate for any real uses of a tanh. It is useful, however, in certain control loop applications where the input is expected to be within these bounds and the noise will be greater than the quanitzation of this small LUT. For more accurate forms of tanh, see volk_32f_tanh_32f.

◆ wav_read_sample()

BLOCKS_API short int gr::blocks::wav_read_sample ( FILE *  fp,
int  bytes_per_sample 
)

Read one sample from an open WAV file at the current position.

Takes care of endianness.

◆ wav_write_sample()

BLOCKS_API void gr::blocks::wav_write_sample ( FILE *  fp,
short int  sample,
int  bytes_per_sample 
)

Write one sample to an open WAV file at the current position.

Takes care of endianness.

◆ wavheader_complete()

BLOCKS_API bool gr::blocks::wavheader_complete ( FILE *  fp,
unsigned int  byte_count 
)

Complete a WAV header.

Note: The stream position is changed during this function. If anything needs to be written to the WAV file after calling this function (which shouldn't happen), you need to fseek() to the end of the file (or wherever).

Parameters
[in]fpFile pointer to an open WAV file with a blank header
[in]byte_countLength of all samples written to the file in bytes.

◆ wavheader_parse()

BLOCKS_API bool gr::blocks::wavheader_parse ( FILE *  fp,
unsigned int &  sample_rate,
int &  nchans,
int &  bytes_per_sample,
int &  first_sample_pos,
unsigned int &  samples_per_chan 
)

Read signal information from a given WAV file.

Parameters
[in]fpFile pointer to an opened, empty file.
[out]sample_rateStores the sample rate [S/s]
[out]nchansNumber of channels
[out]bytes_per_sampleBytes per sample, can either be 1 or 2 (corresponding o 8 or 16 bit samples, respectively)
[out]first_sample_posNumber of the first byte containing a sample. Use this with fseek() to jump from the end of the file to the first sample when in repeat mode.
[out]samples_per_chanNumber of samples per channel
Returns
True on a successful read, false if the file could not be read or is not a valid WAV file.

◆ wavheader_write()

BLOCKS_API bool gr::blocks::wavheader_write ( FILE *  fp,
unsigned int  sample_rate,
int  nchans,
int  bytes_per_sample 
)

Write a valid RIFF file header.

Note: Some header values are kept blank because they're usually not known a-priori (file and chunk lengths). Use gri_wavheader_complete() to fill these in.

Variable Documentation

◆ METADATA_HEADER_SIZE

const size_t gr::blocks::METADATA_HEADER_SIZE = 149

◆ METADATA_VERSION

const char gr::blocks::METADATA_VERSION = 0

◆ tanh_lut_table

float gr::blocks::tanh_lut_table[256]
static