phins_ixsea
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
phins_ixsea::Parser Class Referenceabstract

#include <Parser.hpp>

Inheritance diagram for phins_ixsea::Parser:
phins_ixsea::NmeaParser phins_ixsea::HalliburtonSASParser phins_ixsea::PhinsStandardParser

Public Member Functions

 Parser ()
 
virtual ~Parser ()
 
virtual int extractPacket (uint8_t const *buffer, size_t buffer_size) const =0
 
virtual void parse (uint8_t const *buffer, size_t size)=0
 
bool hasUpdate (uint32_t flags, bool reset=false)
 
bool hasAnyUpdate (uint32_t flags)
 

Static Public Member Functions

static ParsercreateParser (Protocol protocol)
 

Public Attributes

PhinsRawData mData
 
uint32_t mUpdateFlags
 

Detailed Description

Base class for parsing the Phins output and extracting the data It contains an implementation of extractPackage. The base class is pure virtual and can not be instantiated

Constructor & Destructor Documentation

phins_ixsea::Parser::Parser ( )
virtual phins_ixsea::Parser::~Parser ( )
inlinevirtual

Member Function Documentation

Parser * phins_ixsea::Parser::createParser ( Protocol  protocol)
static
virtual int phins_ixsea::Parser::extractPacket ( uint8_t const *  buffer,
size_t  buffer_size 
) const
pure virtual

extract a package from the incoming data stream this method is called be the drivers extractPackage method

Implemented in phins_ixsea::NmeaParser.

bool phins_ixsea::Parser::hasAnyUpdate ( uint32_t  flags)
bool phins_ixsea::Parser::hasUpdate ( uint32_t  flags,
bool  reset = false 
)

checks if actual data is available if true and reset is true, the flasg are reset

Returns
true if all flags are set
if true, reset the set flags
virtual void phins_ixsea::Parser::parse ( uint8_t const *  buffer,
size_t  size 
)
pure virtual

parse a data packet pure virtual, has to be implemented in the specific protocol parser

Implemented in phins_ixsea::PhinsStandardParser, and phins_ixsea::HalliburtonSASParser.

Member Data Documentation

PhinsRawData phins_ixsea::Parser::mData
uint32_t phins_ixsea::Parser::mUpdateFlags

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