#pragma once #include "NetMsg.h" #ifdef AFTR_CONFIG_USE_BOOST #include #include "Mat4.h" namespace Aftr { class NetMsgSendDCM3x3 : public NetMsg { public: NetMsgMacroDeclaration( NetMsgSendDCM3x3 ); NetMsgSendDCM3x3() = default; NetMsgSendDCM3x3( Mat4 const& upper3x3_to_send ); virtual ~NetMsgSendDCM3x3() = default; virtual bool toStream( NetMessengerStreamBuffer& os ) const override; virtual bool fromStream( NetMessengerStreamBuffer& is ) override; virtual void onMessageArrived() override; virtual std::string toString() const override; Mat4D getDCM() const; // 0,1,2 -> xDir // 3,4,5 -> yDir // 6,7,8 -> zDir std::array dcm{0}; ///< elements 0,8 of the 3x3 matrix. }; } //namespace Aftr #endif