VR-Engage  2.2
Loading...
Searching...
No Matches
makVre::ChatMessage Class Reference

#include <chat.h>

Inheritance diagram for makVre::ChatMessage:
[legend]

Classes

struct  ChatData
 

Public Types

enum  MsgType { MsgType_SEND , MsgType_RECEIVE }
 

Public Member Functions

virtual const std::string & type () const override
 
virtual const makVre::DtVreMessageIdmessageId () const override
 
virtual ~ChatMessage () override
 
virtual MsgType getMessageType () const
 
virtual void setMessageType (MsgType val)
 
virtual const DtEntityIdentifier & getSender () const
 
virtual void setSender (const DtEntityIdentifier &val)
 
virtual time_t getReceiveTime () const
 
virtual void setReceiveTime (time_t val)
 
virtual const std::string & getUserName () const
 
virtual void setUserName (const std::string &val)
 
virtual const std::string & getChannel () const
 
virtual void setChannel (const std::string &val)
 
virtual const std::string & getMessage () const
 
virtual void setMessage (const std::string &val)
 
virtual int getForceType () const
 
virtual void setForceType (int val)
 
virtual int messageSize () const override
 
ChatData getData ()
 
ChatData getData () const
 
bool operator== (const ChatMessage &rhs) const
 
- Public Member Functions inherited from makVre::DtVreMessage
 DtVreMessage ()
 
virtual ~DtVreMessage ()
 
virtual char * encode ()
 
virtual void encode (char *buffer, int bufferSize)
 
virtual const UInt64 originatingApplicationId () const
 
virtual void setOriginatingApplicationId (UInt64 appId)
 
virtual void setDelay (double delay)
 
virtual bool isDelayed ()
 
virtual void reduceDelay (double dt)
 
virtual const UInt64 versionNumber () const
 

Static Public Member Functions

static ChatMessagecreate ()
 
static ChatMessagecreateFrom (ChatMessage *)
 
static ChatMessagecreateFromData (const ChatData)
 
static const std::string & theType ()
 
static const makVre::DtVreMessageIdtheId ()
 
static UInt64 theVersionNumber ()
 
static makVre::DtVreMessagedecode (char *buffer, int length)
 

Protected Member Functions

 ChatMessage ()
 
virtual void serialize (DtStreamWriter &writer) const override
 
virtual void deserialize (DtStreamReader &reader) override
 

Protected Attributes

ChatData myData
 
- Protected Attributes inherited from makVre::DtVreMessage
double myDelay
 
UInt64 myApplicationId
 
UInt64 myVersion
 

Static Protected Attributes

static makVre::DtVreMessageId theMessageId
 
static UInt64 theVersion
 

Member Enumeration Documentation

◆ MsgType

Enumerator
MsgType_SEND 
MsgType_RECEIVE 

Constructor & Destructor Documentation

◆ ~ChatMessage()

virtual makVre::ChatMessage::~ChatMessage ( )
overridevirtual

◆ ChatMessage()

makVre::ChatMessage::ChatMessage ( )
protected

Member Function Documentation

◆ create()

static ChatMessage * makVre::ChatMessage::create ( )
static

References ChatMessage().

◆ createFrom()

static ChatMessage * makVre::ChatMessage::createFrom ( ChatMessage * )
static

References ChatMessage().

◆ createFromData()

static ChatMessage * makVre::ChatMessage::createFromData ( const ChatData )
static

References ChatMessage().

◆ theType()

static const std::string & makVre::ChatMessage::theType ( )
static

static message identity functions

◆ theId()

static const makVre::DtVreMessageId & makVre::ChatMessage::theId ( )
static

◆ theVersionNumber()

static UInt64 makVre::ChatMessage::theVersionNumber ( )
static

◆ type()

virtual const std::string & makVre::ChatMessage::type ( ) const
overridevirtual

Get the name of the message type.

Implements makVre::DtVreMessage.

◆ messageId()

virtual const makVre::DtVreMessageId & makVre::ChatMessage::messageId ( ) const
overridevirtual

Gets the message ID object.

Returns
Reference to the message ID object

This pure virtual method must be implemented by derived classes to return a unique identifier object for the message. The message ID contains both the type name and a hash value for efficient routing.

Implements makVre::DtVreMessage.

◆ getMessageType()

virtual MsgType makVre::ChatMessage::getMessageType ( ) const
virtual

◆ setMessageType()

virtual void makVre::ChatMessage::setMessageType ( MsgType val)
virtual

◆ getSender()

virtual const DtEntityIdentifier & makVre::ChatMessage::getSender ( ) const
virtual

◆ setSender()

virtual void makVre::ChatMessage::setSender ( const DtEntityIdentifier & val)
virtual

◆ getReceiveTime()

virtual time_t makVre::ChatMessage::getReceiveTime ( ) const
virtual

◆ setReceiveTime()

virtual void makVre::ChatMessage::setReceiveTime ( time_t val)
virtual

◆ getUserName()

virtual const std::string & makVre::ChatMessage::getUserName ( ) const
virtual

◆ setUserName()

virtual void makVre::ChatMessage::setUserName ( const std::string & val)
virtual

◆ getChannel()

virtual const std::string & makVre::ChatMessage::getChannel ( ) const
virtual

◆ setChannel()

virtual void makVre::ChatMessage::setChannel ( const std::string & val)
virtual

◆ getMessage()

virtual const std::string & makVre::ChatMessage::getMessage ( ) const
virtual

◆ setMessage()

virtual void makVre::ChatMessage::setMessage ( const std::string & val)
virtual

◆ getForceType()

virtual int makVre::ChatMessage::getForceType ( ) const
virtual

◆ setForceType()

virtual void makVre::ChatMessage::setForceType ( int val)
virtual

◆ messageSize()

virtual int makVre::ChatMessage::messageSize ( ) const
overridevirtual

Static decode function pattern for derived classes.

Note
Each derived class must implement a static decode function with the signature:
static DtVreMessage* decode(unsigned char* buffer, int length);
static makVre::DtVreMessage * decode(char *buffer, int length)
DtVreMessage()
Default constructor.
This function is used by the message factory to create messages from raw data.

Gets the total size of the serialized message in bytes

Returns
Size of the message in bytes

This method calculates the total size of the message when serialized, including the base message header (message size, type hash, application ID, version, and delay) and any data added by derived classes.

Derived classes should override this method to include their own data size while calling the base class implementation.

Reimplemented from makVre::DtVreMessage.

◆ decode()

static makVre::DtVreMessage * makVre::ChatMessage::decode ( char * buffer,
int length )
static

◆ getData() [1/2]

ChatData makVre::ChatMessage::getData ( )

◆ getData() [2/2]

ChatData makVre::ChatMessage::getData ( ) const

◆ operator==()

bool makVre::ChatMessage::operator== ( const ChatMessage & rhs) const

References ChatMessage().

◆ serialize()

virtual void makVre::ChatMessage::serialize ( DtStreamWriter & writer) const
overrideprotectedvirtual

Serializes the message to a stream writer.

Parameters
writerReference to the stream writer

This method writes the message header fields to the stream writer. Derived classes should override this method to add their own fields while calling the base class implementation.

Reimplemented from makVre::DtVreMessage.

◆ deserialize()

virtual void makVre::ChatMessage::deserialize ( DtStreamReader & reader)
overrideprotectedvirtual

Deserializes the message from a stream reader.

Parameters
readerReference to the stream reader

This method reads the message header fields from the stream reader. Derived classes should override this method to read their own fields while calling the base class implementation.

Reimplemented from makVre::DtVreMessage.

Member Data Documentation

◆ theMessageId

makVre::DtVreMessageId makVre::ChatMessage::theMessageId
staticprotected

◆ theVersion

UInt64 makVre::ChatMessage::theVersion
staticprotected

◆ myData

ChatData makVre::ChatMessage::myData
protected

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