GNU Radio's SATNOGS Package
gr::satnogs::metadata Class Referenceabstract

#include <metadata.h>

Inheritance diagram for gr::satnogs::metadata:
gr::satnogs::sigmf_metadata gr::satnogs::sigmf_metadata_impl

Public Types

enum  key {
  PDU = 0, DECODER_CRC_VALID, CENTER_FREQ, DECODER_PHASE_DELAY,
  DECODER_RESAMPLING_RATIO, CRC_VALID, FREQ_OFFSET, DECODER_CORRECTED_BITS,
  TIME, SAMPLE_START, SAMPLE_CNT, DECODER_SYMBOL_ERASURES,
  SNR, DECODER_NAME, DECODER_VERSION, ANTENNA_AZIMUTH,
  ANTENNA_ELEVATION, ANTENNA_POLARIZATION, SYMBOL_TIMING_ERROR, KEYS_NUM
}
 
typedef enum gr::satnogs::metadata::key key_t
 

Public Member Functions

virtual void transform (pmt::pmt_t &m)=0
 
virtual void to_file (const std::string &filename)=0
 
virtual const std::string to_sting ()=0
 
virtual ~metadata ()
 

Static Public Member Functions

static std::string value (const key_t &k)
 
static std::string keys ()
 
static std::string time_iso8601 ()
 
static void add_time_iso8601 (pmt::pmt_t &m)
 
static void add_pdu (pmt::pmt_t &m, const uint8_t *in, size_t len)
 
static void add_crc_valid (pmt::pmt_t &m, bool valid)
 
static void add_sample_start (pmt::pmt_t &m, uint64_t idx)
 
static void add_sample_cnt (pmt::pmt_t &m, uint64_t cnt)
 
static void add_symbol_erasures (pmt::pmt_t &m, uint32_t cnt)
 
static void add_corrected_bits (pmt::pmt_t &m, uint32_t cnt)
 
static void add_center_freq (pmt::pmt_t &m, double offset)
 
static void add_freq_offset (pmt::pmt_t &m, double offset)
 
static void add_snr (pmt::pmt_t &m, float snr)
 
static void add_decoder (pmt::pmt_t &m, const std::string &name, const std::string &version)
 
static void add_decoder (pmt::pmt_t &m, const decoder *dec)
 
static void add_antenna_azimuth (pmt::pmt_t &m, double azimuth)
 
static void add_antenna_elevation (pmt::pmt_t &m, double elevation)
 
static void add_antenna_polarization (pmt::pmt_t &m, std::string polarization)
 
static void add_phase_delay (pmt::pmt_t &m, uint64_t phase)
 
static void add_resampling_ratio (pmt::pmt_t &m, float ratio)
 
static void add_symbol_timing_error (pmt::pmt_t &m, double error)
 
static nlohmann::json to_json (const pmt::pmt_t &m)
 

Member Typedef Documentation

◆ key_t

Member Enumeration Documentation

◆ key

Enumerator
PDU 
DECODER_CRC_VALID 
CENTER_FREQ 
DECODER_PHASE_DELAY 
DECODER_RESAMPLING_RATIO 
CRC_VALID 
FREQ_OFFSET 
DECODER_CORRECTED_BITS 
TIME 
SAMPLE_START 
SAMPLE_CNT 
DECODER_SYMBOL_ERASURES 
SNR 
DECODER_NAME 
DECODER_VERSION 
ANTENNA_AZIMUTH 
ANTENNA_ELEVATION 
ANTENNA_POLARIZATION 
SYMBOL_TIMING_ERROR 
KEYS_NUM 

Constructor & Destructor Documentation

◆ ~metadata()

virtual gr::satnogs::metadata::~metadata ( )
virtual

Member Function Documentation

◆ add_antenna_azimuth()

static void gr::satnogs::metadata::add_antenna_azimuth ( pmt::pmt_t &  m,
double  azimuth 
)
static

◆ add_antenna_elevation()

static void gr::satnogs::metadata::add_antenna_elevation ( pmt::pmt_t &  m,
double  elevation 
)
static

◆ add_antenna_polarization()

static void gr::satnogs::metadata::add_antenna_polarization ( pmt::pmt_t &  m,
std::string  polarization 
)
static

◆ add_center_freq()

static void gr::satnogs::metadata::add_center_freq ( pmt::pmt_t &  m,
double  offset 
)
static

◆ add_corrected_bits()

static void gr::satnogs::metadata::add_corrected_bits ( pmt::pmt_t &  m,
uint32_t  cnt 
)
static

◆ add_crc_valid()

static void gr::satnogs::metadata::add_crc_valid ( pmt::pmt_t &  m,
bool  valid 
)
static

◆ add_decoder() [1/2]

static void gr::satnogs::metadata::add_decoder ( pmt::pmt_t &  m,
const std::string &  name,
const std::string &  version 
)
static

◆ add_decoder() [2/2]

static void gr::satnogs::metadata::add_decoder ( pmt::pmt_t &  m,
const decoder dec 
)
static

◆ add_freq_offset()

static void gr::satnogs::metadata::add_freq_offset ( pmt::pmt_t &  m,
double  offset 
)
static

◆ add_pdu()

static void gr::satnogs::metadata::add_pdu ( pmt::pmt_t &  m,
const uint8_t *  in,
size_t  len 
)
static

◆ add_phase_delay()

static void gr::satnogs::metadata::add_phase_delay ( pmt::pmt_t &  m,
uint64_t  phase 
)
static

◆ add_resampling_ratio()

static void gr::satnogs::metadata::add_resampling_ratio ( pmt::pmt_t &  m,
float  ratio 
)
static

◆ add_sample_cnt()

static void gr::satnogs::metadata::add_sample_cnt ( pmt::pmt_t &  m,
uint64_t  cnt 
)
static

◆ add_sample_start()

static void gr::satnogs::metadata::add_sample_start ( pmt::pmt_t &  m,
uint64_t  idx 
)
static

◆ add_snr()

static void gr::satnogs::metadata::add_snr ( pmt::pmt_t &  m,
float  snr 
)
static

◆ add_symbol_erasures()

static void gr::satnogs::metadata::add_symbol_erasures ( pmt::pmt_t &  m,
uint32_t  cnt 
)
static

◆ add_symbol_timing_error()

static void gr::satnogs::metadata::add_symbol_timing_error ( pmt::pmt_t &  m,
double  error 
)
static

◆ add_time_iso8601()

static void gr::satnogs::metadata::add_time_iso8601 ( pmt::pmt_t &  m)
static

◆ keys()

static std::string gr::satnogs::metadata::keys ( )
static

◆ time_iso8601()

static std::string gr::satnogs::metadata::time_iso8601 ( )
static

◆ to_file()

virtual void gr::satnogs::metadata::to_file ( const std::string &  filename)
pure virtual

Stores to file the metadata. The form of the data depends on the implementation

Parameters
filenamethe full path to the metadata file

Implemented in gr::satnogs::sigmf_metadata_impl, and gr::satnogs::sigmf_metadata.

◆ to_json()

static nlohmann::json gr::satnogs::metadata::to_json ( const pmt::pmt_t &  m)
static

◆ to_sting()

virtual const std::string gr::satnogs::metadata::to_sting ( )
pure virtual
Returns
string representation of the processed metadata

Implemented in gr::satnogs::sigmf_metadata_impl, and gr::satnogs::sigmf_metadata.

◆ transform()

virtual void gr::satnogs::metadata::transform ( pmt::pmt_t &  m)
pure virtual

Transforms the PMT metadata message of gr-satnogs to the appropriate form. The form and the storage is implementation specific

Parameters
mthe message containing a dictionary of gr-satnogs matadata

Implemented in gr::satnogs::sigmf_metadata_impl, and gr::satnogs::sigmf_metadata.

◆ value()

static std::string gr::satnogs::metadata::value ( const key_t k)
static

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