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();
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){};
178 input_stream_ = boost::make_shared<InputStream>(user);
179 framer_ = boost::make_shared<Framer>(input_stream_.get());
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;
Oem7RawMessage(BaseMessageData *raw_bmd)
boost::shared_ptr< InputStream > input_stream_
EDIE input stream; refer to EDIE documentation.
virtual bool readMessage(boost::shared_ptr< Oem7RawMessageIf > &msg)
Oem7MessageFormat getMessageFormat() const
Oem7MessageDecoderLibUserIf * user_
boost::shared_ptr< BaseMessageData > bmd_
binary message obtained from receiver
boost::shared_ptr< Framer > framer_
EDIE standard framer.
virtual bool read(boost::asio::mutable_buffer, size_t &)=0
const uint8_t * getMessageData(size_t offset) const
Oem7MessageType getMessageType() const
void GetOem7MessageDecoderLibVersion(version_element_t &major, version_element_t &minor, version_element_t &spec)
boost::shared_ptr< Oem7MessageDecoderLibIf > GetOem7MessageDecoder(Oem7MessageDecoderLibUserIf *user)
Oem7MessageDecoderLib(Oem7MessageDecoderLibUserIf *user)
size_t getMessageDataLength() const