UniRec 3.3.2
Loading...
Searching...
No Matches
Data Structures | Typedefs | Functions | Variables
Nemea Namespace Reference

Data Structures

struct  add_const
 A type trait that adds const to a given type if it is a pointer or a reference. More...
 
struct  add_const< T & >
 
struct  add_const< T * >
 
class  EoFException
 An exception that is thrown when the end of the input stream is reached. More...
 
class  FormatChangeException
 An exception that is thrown when the record format changes. More...
 
class  HelpException
 This exception is thrown when the libtrap command-line argument contains help flag. More...
 
struct  InputInteraceStats
 Structure to store statistics related to an input interface. More...
 
struct  IpAddress
 A struct representing an IP address with associated operations. More...
 
struct  is_string
 A type trait that checks if a given type is a string type. More...
 
struct  is_string< std::string >
 
struct  is_string< std::string_view >
 
struct  MacAddress
 
class  TrapModuleInfo
 Class representing information about a trap module. More...
 
class  Unirec
 
class  UnirecArray
 A wrapper class for a contiguous array of values with the same unirec fieldID. More...
 
class  UnirecBidirectionalInterface
 A class that provides a bidirectional interface for sending and receiving unirec records. More...
 
class  UnirecInputInterface
 A class that provides an interface for receiving data in the Unirec format using the TRAP library. More...
 
class  UnirecOutputInterface
 A class for sending UniRec records through a Trap interface. More...
 
class  UnirecRecord
 A class for working with UniRec records and their fields. More...
 
class  UnirecRecordView
 Provides a view into a UniRec record. More...
 
struct  UrTime
 

Typedefs

template<typename T >
using add_const_t = typename add_const< T >::type
 

Functions

template<typename T >
constexpr ur_field_type_t getExpectedUnirecType ()
 Determines the expected UniRec field type for a given C++ type T.
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< std::byte * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< char > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< std::string > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< std::string_view > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< char * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint8_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint8_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int8_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int8_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint16_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint16_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int16_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int16_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint32_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint32_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int32_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int32_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint64_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< uint64_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int64_t > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< int64_t * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< float > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< float * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< double > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< double * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< MacAddress > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< MacAddress * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< IpAddress > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< IpAddress * > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< UrTime > ()
 
template<>
constexpr ur_field_type_t getExpectedUnirecType< UrTime * > ()
 

Variables

static const ip_addr_t EMPTY_IP_ADDRESS = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff, 0xff, 0xff } }
 Define a constant for an empty IP address 0.0.0.0 for IPv4, :: for IPv6.
 
template<typename T >
constexpr bool is_string_v = is_string<T>::value
 

Data Structure Documentation

◆ Nemea::add_const

struct Nemea::add_const
template<typename T>
struct Nemea::add_const< T >

A type trait that adds const to a given type if it is a pointer or a reference.

If the input type T is not a pointer or a reference, add_const<T> is equivalent to T. Otherwise, add_const<T> adds const to the pointed-to or referred-to type.

Template Parameters
TThe input type to add const to.

Definition at line 45 of file unirecTypeTraits.hpp.

Data Fields
typedef T type

◆ Nemea::add_const< T & >

struct Nemea::add_const< T & >
template<typename T>
struct Nemea::add_const< T & >

Definition at line 55 of file unirecTypeTraits.hpp.

Data Fields
typedef const T & type

◆ Nemea::add_const< T * >

struct Nemea::add_const< T * >
template<typename T>
struct Nemea::add_const< T * >

Definition at line 50 of file unirecTypeTraits.hpp.

Data Fields
typedef const T * type

◆ Nemea::InputInteraceStats

struct Nemea::InputInteraceStats

Structure to store statistics related to an input interface.

Definition at line 18 of file interfaceStats.hpp.

Data Fields
uint64_t missedRecords

Total number of missed records.

uint64_t receivedBytes

Total number of bytes received.

uint64_t receivedRecords

Total number of records received.

◆ Nemea::MacAddress

struct Nemea::MacAddress

Definition at line 7 of file macAddress.hpp.

Data Fields
mac_addr_t mac

Typedef Documentation

◆ add_const_t

template<typename T >
using Nemea::add_const_t = typedef typename add_const<T>::type

Definition at line 60 of file unirecTypeTraits.hpp.

Function Documentation

◆ getExpectedUnirecType()

template<typename T >
constexpr ur_field_type_t Nemea::getExpectedUnirecType ( )
constexpr

Determines the expected UniRec field type for a given C++ type T.

Template Parameters
TThe C++ type to determine the expected UniRec field type for.
Returns
The expected UniRec field type for the given C++ type T.

◆ getExpectedUnirecType< char * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< char * > ( )
constexpr

Definition at line 57 of file unirecTypes.hpp.

◆ getExpectedUnirecType< char >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< char > ( )
constexpr

Definition at line 39 of file unirecTypes.hpp.

◆ getExpectedUnirecType< double * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< double * > ( )
constexpr

Definition at line 177 of file unirecTypes.hpp.

◆ getExpectedUnirecType< double >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< double > ( )
constexpr

Definition at line 171 of file unirecTypes.hpp.

◆ getExpectedUnirecType< float * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< float * > ( )
constexpr

Definition at line 165 of file unirecTypes.hpp.

◆ getExpectedUnirecType< float >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< float > ( )
constexpr

Definition at line 159 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int16_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int16_t * > ( )
constexpr

Definition at line 105 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int16_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int16_t > ( )
constexpr

Definition at line 99 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int32_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int32_t * > ( )
constexpr

Definition at line 129 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int32_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int32_t > ( )
constexpr

Definition at line 123 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int64_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int64_t * > ( )
constexpr

Definition at line 153 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int64_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int64_t > ( )
constexpr

Definition at line 147 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int8_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int8_t * > ( )
constexpr

Definition at line 81 of file unirecTypes.hpp.

◆ getExpectedUnirecType< int8_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< int8_t > ( )
constexpr

Definition at line 75 of file unirecTypes.hpp.

◆ getExpectedUnirecType< IpAddress * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< IpAddress * > ( )
constexpr

Definition at line 201 of file unirecTypes.hpp.

◆ getExpectedUnirecType< IpAddress >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< IpAddress > ( )
constexpr

Definition at line 195 of file unirecTypes.hpp.

◆ getExpectedUnirecType< MacAddress * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< MacAddress * > ( )
constexpr

Definition at line 189 of file unirecTypes.hpp.

◆ getExpectedUnirecType< MacAddress >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< MacAddress > ( )
constexpr

Definition at line 183 of file unirecTypes.hpp.

◆ getExpectedUnirecType< std::byte * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< std::byte * > ( )
constexpr

Definition at line 33 of file unirecTypes.hpp.

◆ getExpectedUnirecType< std::string >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< std::string > ( )
constexpr

Definition at line 45 of file unirecTypes.hpp.

◆ getExpectedUnirecType< std::string_view >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< std::string_view > ( )
constexpr

Definition at line 51 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint16_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint16_t * > ( )
constexpr

Definition at line 93 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint16_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint16_t > ( )
constexpr

Definition at line 87 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint32_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint32_t * > ( )
constexpr

Definition at line 117 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint32_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint32_t > ( )
constexpr

Definition at line 111 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint64_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint64_t * > ( )
constexpr

Definition at line 141 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint64_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint64_t > ( )
constexpr

Definition at line 135 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint8_t * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint8_t * > ( )
constexpr

Definition at line 69 of file unirecTypes.hpp.

◆ getExpectedUnirecType< uint8_t >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< uint8_t > ( )
constexpr

Definition at line 63 of file unirecTypes.hpp.

◆ getExpectedUnirecType< UrTime * >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< UrTime * > ( )
constexpr

Definition at line 213 of file unirecTypes.hpp.

◆ getExpectedUnirecType< UrTime >()

template<>
constexpr ur_field_type_t Nemea::getExpectedUnirecType< UrTime > ( )
constexpr

Definition at line 207 of file unirecTypes.hpp.

Variable Documentation

◆ EMPTY_IP_ADDRESS

const ip_addr_t Nemea::EMPTY_IP_ADDRESS = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff, 0xff, 0xff } }
static

Define a constant for an empty IP address 0.0.0.0 for IPv4, :: for IPv6.

Definition at line 23 of file ipAddress.hpp.

◆ is_string_v

template<typename T >
constexpr bool Nemea::is_string_v = is_string<T>::value
constexpr

Definition at line 35 of file unirecTypeTraits.hpp.