Go to the documentation of this file.
28 #include <boost/shared_ptr.hpp>
29 #include <boost/make_shared.hpp>
30 #include <decoders/novatel/framer.hpp>
69 if(
bmd_->getMessageType())
84 switch(
bmd_->getMessageFormat())
99 return bmd_->getMessageID();
107 return reinterpret_cast<uint8_t*
>(&
bmd_->getMessageData()[offset]);
115 return bmd_->getMessageLength();
138 ReadData(ReadDataStructure& read_data)
141 bool ok =
user_->
read(boost::asio::buffer(read_data.cData, read_data.uiDataSize), rlen);
145 st.uiCurrentStreamRead = rlen;
152 virtual StreamReadStatus
ReadLine(std::string&) {
return StreamReadStatus(); };
158 virtual void Reset(std::streamoff, std::ios_base::seekdir){};
181 framer_->EnableUnknownData(TRUE);
182 framer_->SetBMDOutput(FLATTEN);
190 BaseMessageData* raw_bmd = NULL;
191 StreamReadStatus status =
framer_->ReadMessage(&raw_bmd);
194 msg = boost::make_shared<Oem7RawMessage>(raw_bmd);
217 major = VERSION_MAJOR;
218 minor = VERSION_MINOR;
219 spec = VERSION_SPECIAL;
Oem7MessageDecoderLibUserIf * user_
virtual bool readMessage(boost::shared_ptr< Oem7RawMessageIf > &msg)
Oem7RawMessage(BaseMessageData *raw_bmd)
virtual bool read(boost::asio::mutable_buffer, size_t &)=0
boost::shared_ptr< BaseMessageData > bmd_
binary message obtained from receiver
const uint8_t * getMessageData(size_t offset) const
Oem7MessageFormat getMessageFormat() const
size_t getMessageDataLength() const
boost::shared_ptr< Framer > framer_
EDIE standard framer.
boost::shared_ptr< InputStream > input_stream_
EDIE input stream; refer to EDIE documentation.
void GetOem7MessageDecoderLibVersion(version_element_t &major, version_element_t &minor, version_element_t &spec)
boost::shared_ptr< Oem7MessageDecoderLibIf > GetOem7MessageDecoder(Oem7MessageDecoderLibUserIf *user)
Oem7MessageDecoderLib(Oem7MessageDecoderLibUserIf *user)
Oem7MessageType getMessageType() const