#include "WHISPER/Messages/Message.hpp" #include "WHISPER/Messages/Protos/raw_track.pb.h" #include #include namespace WHISPER { RawTrack::RawTrack(std::string receivedMessage){ msg = messages::header::Message(); try { msg.ParseFromString(receivedMessage); topic_ = msg.topic(); sourceType_ = msg.sourcetype(); msgType_ = msg.msgtype(); trackMessage = messages::raw_track::RawTrack(); if ( msg.payload_size()) { if (msg.payload().begin()->Is()) { msg.payload().begin()->UnpackTo(&trackMessage); } } trackNo = trackMessage.trackno(); } catch (const std::exception& e) { LOG_S(ERROR)<(); payloadMessage->PackFrom(trackMessage); addPayLoad(payloadMessage); } }