Stellarium 0.15.2
List of all members | Public Member Functions | Static Protected Member Functions
SyncMessage Class Referenceabstract

Base interface for the messages themselves, allowing to serialize/deserialize them. More...

#include <SyncProtocol.hpp>

+ Inheritance diagram for SyncMessage:

Public Member Functions

virtual SyncProtocol::SyncMessageType getMessageType () const =0
 Subclasses must return the message type this message represents. More...
 
qint64 createFullMessage (QByteArray &target) const
 Writes a full message (with header) to the specified byte array. More...
 
virtual void serialize (QDataStream &stream) const
 Subclasses should override this to serialize their contents to the data stream. More...
 
virtual bool deserialize (QDataStream &stream, SyncProtocol::tPayloadSize dataSize)
 Subclasses should override this to load their contents from the data stream. More...
 

Static Protected Member Functions

static void writeString (QDataStream &stream, const QString &str)
 
static QString readString (QDataStream &stream)
 

Detailed Description

Base interface for the messages themselves, allowing to serialize/deserialize them.

Definition at line 115 of file SyncProtocol.hpp.

Member Function Documentation

qint64 SyncMessage::createFullMessage ( QByteArray &  target) const

Writes a full message (with header) to the specified byte array.

Returns the total message size. If zero, the payload is too large for a SyncMessage.

virtual bool SyncMessage::deserialize ( QDataStream &  stream,
SyncProtocol::tPayloadSize  dataSize 
)
virtual

Subclasses should override this to load their contents from the data stream.

The default implementation expects a zero dataSize, and reads nothing.

Reimplemented in Selection, Location, Time, ClientChallengeResponse, ServerChallenge, and ErrorMessage.

virtual SyncProtocol::SyncMessageType SyncMessage::getMessageType ( ) const
pure virtual

Subclasses must return the message type this message represents.

Implemented in Alive, Selection, Location, Time, ServerChallengeResponseValid, ClientChallengeResponse, ServerChallenge, and ErrorMessage.

virtual void SyncMessage::serialize ( QDataStream &  stream) const
virtual

Subclasses should override this to serialize their contents to the data stream.

The default implementation writes nothing.

Reimplemented in Selection, Location, Time, ClientChallengeResponse, ServerChallenge, and ErrorMessage.


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