Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions
mrpt::obs::gnss::gnss_message Struct Referenceabstract

Detailed Description

Pure virtual base for all message types.

See also
mrpt::obs::CObservationGPS

Definition at line 26 of file gnss_messages_common.h.

#include <mrpt/obs/gnss_messages_common.h>

Inheritance diagram for mrpt::obs::gnss::gnss_message:
Inheritance graph

Public Member Functions

 gnss_message (gnss_message_type_t msg_type_id)
 
void writeToStream (mrpt::serialization::CArchive &out) const
 Save to binary stream. More...
 
void readFromStream (mrpt::serialization::CArchive &in)
 Load from binary stream into this existing object. More...
 
bool isOfType (const gnss_message_type_t type_id) const
 
template<class MSG_CLASS >
bool isOfClass () const
 
virtual void dumpToStream (std::ostream &out) const =0
 Dumps the contents of the observation in a human-readable form to a given output stream. More...
 
void dumpToConsole (std::ostream &o) const
 Dumps the contents of the observation in a human-readable form to an std::ostream (set to std::cout to print to console) More...
 
virtual bool getAllFieldDescriptions (std::ostream &o) const
 Dumps a header for getAllFieldValues() More...
 
virtual bool getAllFieldValues (std::ostream &o) const
 Dumps a line with the sequence of all field values (without a line feed at the end). More...
 
const std::stringgetMessageTypeAsString () const
 Returns "NMEA_GGA", etc. More...
 
virtual ~gnss_message ()
 

Static Public Member Functions

static gnss_messagereadAndBuildFromStream (mrpt::serialization::CArchive &in)
 Load from binary stream and creates object detecting its type (class factory). More...
 
static gnss_messageFactory (const gnss_message_type_t msg_id)
 Creates message. More...
 
static bool FactoryKnowsMsgType (const gnss_message_type_t msg_id)
 Returns true if Factory() has a registered constructor for this msg type. More...
 

Public Attributes

gnss_message_type_t message_type
 Type of GNSS message. More...
 

Protected Member Functions

virtual void internal_writeToStream (mrpt::serialization::CArchive &out) const =0
 Save to binary stream. More...
 
virtual void internal_readFromStream (mrpt::serialization::CArchive &in)=0
 Save to binary stream. More...
 

Constructor & Destructor Documentation

◆ gnss_message()

mrpt::obs::gnss::gnss_message::gnss_message ( gnss_message_type_t  msg_type_id)
inline

Definition at line 31 of file gnss_messages_common.h.

◆ ~gnss_message()

virtual mrpt::obs::gnss::gnss_message::~gnss_message ( )
inlinevirtual

Definition at line 73 of file gnss_messages_common.h.

Member Function Documentation

◆ dumpToConsole()

void mrpt::obs::gnss::gnss_message::dumpToConsole ( std::ostream &  o) const

Dumps the contents of the observation in a human-readable form to an std::ostream (set to std::cout to print to console)

◆ dumpToStream()

virtual void mrpt::obs::gnss::gnss_message::dumpToStream ( std::ostream &  out) const
pure virtual

◆ Factory()

gnss_message * gnss_message::Factory ( const gnss_message_type_t  msg_id)
static

Creates message.

Returns
nullptr on unknown msg type

Definition at line 47 of file gnss_messages_common.cpp.

References LIST_ALL_MSGS.

◆ FactoryKnowsMsgType()

bool gnss_message::FactoryKnowsMsgType ( const gnss_message_type_t  msg_id)
static

Returns true if Factory() has a registered constructor for this msg type.

Definition at line 60 of file gnss_messages_common.cpp.

References LIST_ALL_MSGS.

◆ getAllFieldDescriptions()

virtual bool mrpt::obs::gnss::gnss_message::getAllFieldDescriptions ( std::ostream &  o) const
inlinevirtual

◆ getAllFieldValues()

virtual bool mrpt::obs::gnss::gnss_message::getAllFieldValues ( std::ostream &  o) const
inlinevirtual

Dumps a line with the sequence of all field values (without a line feed at the end).

See also
getAllFieldDescriptions()
Returns
false if not implemented for this message type

Reimplemented in mrpt::obs::gnss::Message_NMEA_ZDA, mrpt::obs::gnss::Message_NMEA_VTG, mrpt::obs::gnss::Message_NMEA_RMC, mrpt::obs::gnss::Message_NMEA_GLL, and mrpt::obs::gnss::Message_NMEA_GGA.

Definition at line 70 of file gnss_messages_common.h.

◆ getMessageTypeAsString()

const std::string & gnss_message::getMessageTypeAsString ( ) const

Returns "NMEA_GGA", etc.

Definition at line 74 of file gnss_messages_common.cpp.

References LIST_ALL_MSGS.

Referenced by mrpt::hwdrivers::CGPSInterface::implement_parser_NOVATEL_OEM6().

◆ internal_readFromStream()

virtual void mrpt::obs::gnss::gnss_message::internal_readFromStream ( mrpt::serialization::CArchive in)
protectedpure virtual

◆ internal_writeToStream()

virtual void mrpt::obs::gnss::gnss_message::internal_writeToStream ( mrpt::serialization::CArchive out) const
protectedpure virtual

◆ isOfClass()

template<class MSG_CLASS >
bool mrpt::obs::gnss::gnss_message::isOfClass ( ) const
inline

Definition at line 40 of file gnss_messages_common.h.

References isOfType().

◆ isOfType()

bool mrpt::obs::gnss::gnss_message::isOfType ( const gnss_message_type_t  type_id) const

Referenced by isOfClass().

◆ readAndBuildFromStream()

gnss_message * gnss_message::readAndBuildFromStream ( mrpt::serialization::CArchive in)
static

Load from binary stream and creates object detecting its type (class factory).

Launches an exception upon error

Definition at line 107 of file gnss_messages_common.cpp.

References internal_readFromStream(), and THROW_EXCEPTION_FMT.

Referenced by mrpt::obs::gnss::gnss_message_ptr::gnss_message_ptr(), and mrpt::obs::gnss::gnss_message_ptr::operator=().

◆ readFromStream()

void gnss_message::readFromStream ( mrpt::serialization::CArchive in)

Load from binary stream into this existing object.

Launches an exception upon error.

Definition at line 97 of file gnss_messages_common.cpp.

References ASSERT_EQUAL_.

◆ writeToStream()

void gnss_message::writeToStream ( mrpt::serialization::CArchive out) const

Save to binary stream.

Launches an exception upon error

Definition at line 90 of file gnss_messages_common.cpp.

References mrpt::serialization::CArchive::WriteAs().

Referenced by mrpt::obs::gnss::gnss_message_ptr::gnss_message_ptr(), and mrpt::obs::gnss::gnss_message_ptr::operator=().

Member Data Documentation

◆ message_type

gnss_message_type_t mrpt::obs::gnss::gnss_message::message_type



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at lun oct 28 00:14:14 CET 2019