ifw-rtmslib 1.0.0
 
Loading...
Searching...
No Matches
ifw::rtmslib Namespace Reference

Common utilities for RTMS Lib. More...

Classes

struct  ReceiverConfig
 
class  RtmsReceiver
 RtmsReceiver class. More...
 
class  RtmsSender
 RtmsSender class. More...
 
class  SampleExtInfo
 
class  SenderConfig
 

Enumerations

enum class  ExtendedInfoMode { None , TimestampOnly , BasicImageInfo }
 
enum class  SampleFailureKind { None , Timeout , SampleError }
 

Functions

std::string ExtInfoSummary (const std::vector< uint8_t > &packed_ext_info)
 
std::tuple< std::vector< uint8_t >, int, int, int, int > LoadFitsImageCube (const char *filename)
 
void HandleCfitsioError (const std::string &operation, const int cfitsio_status)
 
constexpr uint16_t ExtInfoSizeFromMode (ExtendedInfoMode mode)
 
constexpr const char * ToString (ExtendedInfoMode mode)
 
double Time ()
 
void Sleep (const double sleep_time)
 
const std::string & LogPropertiesName (const std::string &log_properties={})
 Optionally override the log4cplus properties file location.
 
const std::string & AppLogName (const std::string &logger_name={})
 Optionally override the application logger name.
 
std::string FindFile (const std::string &resource_filename)
 
void ConfigureLogging ()
 Configure log4cplus once, honoring resource overrides.
 
log4cplus::Logger & Logger ()
 Retrieve the library logger (configured on first use).
 

Variables

int8_t __rtmslib_debug__ = -1
 
constexpr auto MAX_NB_BUFFERS_FOR_UDP_PACKET = 6
 
constexpr auto UDP_HDR_SZ = 8
 
constexpr auto IP_HDR_SZ = 20
 
constexpr auto CHECK_SUM_HDR_SZ = 2
 
constexpr std::size_t RTMS_LEADER_HDR_SZ
 
constexpr std::size_t RTMS_PAYLOAD_HDR_SZ
 
constexpr std::size_t MUDPI_HDR_SZ
 
constexpr std::size_t RTMS_TRAILER_HDR_SZ = RTMS_LEADER_HDR_SZ
 
constexpr auto LEADER_TRAILER_PACKET_NB = 2
 
constexpr const char * RTMSLIB_DEBUG = "RTMSLIB_DEBUG"
 
constexpr auto LIB_RTMSLIB_LOGGER_NAME = "rtmslib"
 
constexpr auto RTMSLIB_LOG_PROPS = "config/ifw/rtmslib/log.properties"
 
constexpr std::size_t SIZE_SAMPLE_EXT_INFO = sizeof(double) + 5U * sizeof(std::int32_t)
 

Detailed Description

Common utilities for RTMS Lib.

RtmsReceiver Class implementation.

IFW RTMS Extended Leader Packet Info class.

RtmsSender class file.

RtmsReceiver class file.

Logger for RTMS Lib.

Enumeration Type Documentation

◆ ExtendedInfoMode

enum class ifw::rtmslib::ExtendedInfoMode
strong
Enumerator
None 

Leader packets carry no extended info.

TimestampOnly 

Only the timestamp (8 bytes)

BasicImageInfo 

Full SampleExtInfo block.

◆ SampleFailureKind

Enumerator
None 
Timeout 
SampleError 

Function Documentation

◆ AppLogName()

const std::string & ifw::rtmslib::AppLogName ( const std::string & logger_name = {})

Optionally override the application logger name.

◆ ConfigureLogging()

void ifw::rtmslib::ConfigureLogging ( )

Configure log4cplus once, honoring resource overrides.

◆ ExtInfoSizeFromMode()

uint16_t ifw::rtmslib::ExtInfoSizeFromMode ( ExtendedInfoMode mode)
inlineconstexpr

◆ ExtInfoSummary()

std::string ifw::rtmslib::ExtInfoSummary ( const std::vector< uint8_t > & packed_ext_info)

◆ FindFile()

std::string ifw::rtmslib::FindFile ( const std::string & resource_filename)

Resolve a resource file via the standard ELT ICS search paths: $CFGPATH roots (in order), then $INTROOT/resource and $PREFIX/resource. Returns an empty string if not found.

◆ HandleCfitsioError()

void ifw::rtmslib::HandleCfitsioError ( const std::string & operation,
const int cfitsio_status )

◆ LoadFitsImageCube()

std::tuple< std::vector< uint8_t >, int, int, int, int > ifw::rtmslib::LoadFitsImageCube ( const char * filename)

◆ Logger()

log4cplus::Logger & ifw::rtmslib::Logger ( )

Retrieve the library logger (configured on first use).

◆ LogPropertiesName()

const std::string & ifw::rtmslib::LogPropertiesName ( const std::string & log_properties = {})

Optionally override the log4cplus properties file location.

◆ Sleep()

void ifw::rtmslib::Sleep ( const double sleep_time)
inline

◆ Time()

double ifw::rtmslib::Time ( )
inline

◆ ToString()

const char * ifw::rtmslib::ToString ( ExtendedInfoMode mode)
inlineconstexpr

Variable Documentation

◆ __rtmslib_debug__

int8_t ifw::rtmslib::__rtmslib_debug__ = -1

◆ CHECK_SUM_HDR_SZ

auto ifw::rtmslib::CHECK_SUM_HDR_SZ = 2
constexpr

◆ IP_HDR_SZ

auto ifw::rtmslib::IP_HDR_SZ = 20
constexpr

◆ LEADER_TRAILER_PACKET_NB

auto ifw::rtmslib::LEADER_TRAILER_PACKET_NB = 2
constexpr

◆ LIB_RTMSLIB_LOGGER_NAME

auto ifw::rtmslib::LIB_RTMSLIB_LOGGER_NAME = "rtmslib"
constexpr

◆ MAX_NB_BUFFERS_FOR_UDP_PACKET

auto ifw::rtmslib::MAX_NB_BUFFERS_FOR_UDP_PACKET = 6
constexpr

◆ MUDPI_HDR_SZ

std::size_t ifw::rtmslib::MUDPI_HDR_SZ
constexpr
Initial value:
=
constexpr auto UDP_HDR_SZ
Definition common.hpp:37
constexpr auto IP_HDR_SZ
Definition common.hpp:38
constexpr std::size_t RTMS_PAYLOAD_HDR_SZ
Definition common.hpp:44
constexpr auto CHECK_SUM_HDR_SZ
Definition common.hpp:39

◆ RTMS_LEADER_HDR_SZ

std::size_t ifw::rtmslib::RTMS_LEADER_HDR_SZ
constexpr
Initial value:
=
sizeof(llnetio::mudpi::Header) +
sizeof(llnetio::rtms::CommonHeader) +
sizeof(llnetio::rtms::LeaderHeader)

◆ RTMS_PAYLOAD_HDR_SZ

std::size_t ifw::rtmslib::RTMS_PAYLOAD_HDR_SZ
constexpr
Initial value:
=
sizeof(llnetio::mudpi::Header) +
sizeof(llnetio::rtms::CommonHeader) +
sizeof(llnetio::rtms::PayloadHeader)

◆ RTMS_TRAILER_HDR_SZ

std::size_t ifw::rtmslib::RTMS_TRAILER_HDR_SZ = RTMS_LEADER_HDR_SZ
constexpr

◆ RTMSLIB_DEBUG

const char* ifw::rtmslib::RTMSLIB_DEBUG = "RTMSLIB_DEBUG"
constexpr

◆ RTMSLIB_LOG_PROPS

auto ifw::rtmslib::RTMSLIB_LOG_PROPS = "config/ifw/rtmslib/log.properties"
constexpr

◆ SIZE_SAMPLE_EXT_INFO

std::size_t ifw::rtmslib::SIZE_SAMPLE_EXT_INFO = sizeof(double) + 5U * sizeof(std::int32_t)
constexpr

◆ UDP_HDR_SZ

auto ifw::rtmslib::UDP_HDR_SZ = 8
constexpr