Cockatrice 2025-11-30-Development-2.11.0-beta.38
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
AbstractServerSocketInterface Class Referenceabstract

#include <serversocketinterface.h>

Inheritance diagram for AbstractServerSocketInterface:
[legend]
Collaboration diagram for AbstractServerSocketInterface:
[legend]

Signals

void outputQueueChanged ()
void incTxBytes (qint64 amount)

Public Member Functions

 AbstractServerSocketInterface (Servatrice *_server, Servatrice_DatabaseInterface *_databaseInterface, QObject *parent=0)
 ~AbstractServerSocketInterface ()
bool initSession ()
virtual QHostAddress getPeerAddress () const =0
virtual QString getAddress () const =0
void transmitProtocolItem (const ServerMessage &item)
Public Member Functions inherited from Server_ProtocolHandler
 Server_ProtocolHandler (Server *_server, Server_DatabaseInterface *_databaseInterface, QObject *parent=0)
 ~Server_ProtocolHandler ()
bool getAcceptsUserListChanges () const
bool getAcceptsRoomListChanges () const
virtual QString getConnectionType () const =0
Server_DatabaseInterfacegetDatabaseInterface () const
int getLastCommandTime () const
bool addSaidMessageSize (int size)
void processCommandContainer (const CommandContainer &cont)
void sendProtocolItem (const Response &item)
void sendProtocolItem (const SessionEvent &item)
void sendProtocolItem (const GameEventContainer &item)
void sendProtocolItem (const RoomEvent &item)
Public Member Functions inherited from Server_AbstractUserInterface
 Server_AbstractUserInterface (Server *_server)
 Server_AbstractUserInterface (Server *_server, const ServerInfo_User_Container &other)
 ~Server_AbstractUserInterface () override
void playerRemovedFromGame (Server_Game *game)
void playerAddedToGame (int gameId, int roomId, int playerId)
void joinPersistentGames (ResponseContainer &rc)
QMap< int, QPair< int, int > > getGames () const
void sendProtocolItemByType (ServerMessage::MessageType type, const ::google::protobuf::Message &item)
void sendResponseContainer (const ResponseContainer &responseContainer, Response::ResponseCode responseCode)
Public Member Functions inherited from ServerInfo_User_Container
 ServerInfo_User_Container (ServerInfo_User *_userInfo=nullptr)
 ServerInfo_User_Container (const ServerInfo_User &_userInfo)
 ServerInfo_User_Container (const ServerInfo_User_Container &other)
ServerInfo_User_Containeroperator= (const ServerInfo_User_Container &other)=default
virtual ~ServerInfo_User_Container ()
ServerInfo_User * getUserInfo () const
void setUserInfo (const ServerInfo_User &_userInfo)
ServerInfo_User & copyUserInfo (ServerInfo_User &result, bool complete, bool internalInfo=false, bool sessionInfo=false) const
ServerInfo_User copyUserInfo (bool complete, bool internalInfo=false, bool sessionInfo=false) const

Protected Slots

void catchSocketError (QAbstractSocket::SocketError socketError)
void catchSocketDisconnected ()
virtual void flushOutputQueue ()=0

Protected Member Functions

void logDebugMessage (const QString &message)
bool tooManyRegistrationAttempts (const QString &ipAddress)
virtual void writeToSocket (QByteArray &data)=0
virtual void flushSocket ()=0

Protected Attributes

Servatriceservatrice
QList< ServerMessage > outputQueue
QMutex outputQueueMutex
Protected Attributes inherited from Server_ProtocolHandler
QMap< int, Server_Room * > rooms
bool deleted
Server_DatabaseInterfacedatabaseInterface
AuthenticationResult authState
bool usingRealPassword
bool acceptsUserListChanges
bool acceptsRoomListChanges
bool idleClientWarningSent
Protected Attributes inherited from Server_AbstractUserInterface
Serverserver
Protected Attributes inherited from ServerInfo_User_Container
ServerInfo_User * userInfo

Private Member Functions

Response::ResponseCode cmdAddToList (const Command_AddToList &cmd, ResponseContainer &rc)
Response::ResponseCode cmdRemoveFromList (const Command_RemoveFromList &cmd, ResponseContainer &rc)
int getDeckPathId (int basePathId, QStringList path)
int getDeckPathId (const QString &path)
bool deckListHelper (int folderId, ServerInfo_DeckStorage_Folder *folder)
Response::ResponseCode cmdDeckList (const Command_DeckList &cmd, ResponseContainer &rc)
Response::ResponseCode cmdDeckNewDir (const Command_DeckNewDir &cmd, ResponseContainer &rc)
void deckDelDirHelper (int basePathId)
void sendServerMessage (const QString userName, const QString message)
Response::ResponseCode cmdDeckDelDir (const Command_DeckDelDir &cmd, ResponseContainer &rc)
Response::ResponseCode cmdDeckDel (const Command_DeckDel &cmd, ResponseContainer &rc)
Response::ResponseCode cmdDeckUpload (const Command_DeckUpload &cmd, ResponseContainer &rc)
DeckListgetDeckFromDatabase (int deckId)
Response::ResponseCode cmdDeckDownload (const Command_DeckDownload &cmd, ResponseContainer &rc)
Response::ResponseCode cmdReplayList (const Command_ReplayList &cmd, ResponseContainer &rc)
Response::ResponseCode cmdReplayDownload (const Command_ReplayDownload &cmd, ResponseContainer &rc)
Response::ResponseCode cmdReplayModifyMatch (const Command_ReplayModifyMatch &cmd, ResponseContainer &rc)
Response::ResponseCode cmdReplayDeleteMatch (const Command_ReplayDeleteMatch &cmd, ResponseContainer &rc)
QString createHashForReplay (int gameId)
Response::ResponseCode cmdReplayGetCode (const Command_ReplayGetCode &cmd, ResponseContainer &rc)
Response::ResponseCode cmdReplaySubmitCode (const Command_ReplaySubmitCode &cmd, ResponseContainer &rc)
Response::ResponseCode cmdBanFromServer (const Command_BanFromServer &cmd, ResponseContainer &rc)
Response::ResponseCode cmdWarnUser (const Command_WarnUser &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGetLogHistory (const Command_ViewLogHistory &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGetBanHistory (const Command_GetBanHistory &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGetWarnList (const Command_GetWarnList &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGetWarnHistory (const Command_GetWarnHistory &cmd, ResponseContainer &rc)
Response::ResponseCode cmdShutdownServer (const Command_ShutdownServer &cmd, ResponseContainer &rc)
Response::ResponseCode cmdUpdateServerMessage (const Command_UpdateServerMessage &cmd, ResponseContainer &rc)
Response::ResponseCode cmdRegisterAccount (const Command_Register &cmd, ResponseContainer &rc)
Response::ResponseCode cmdActivateAccount (const Command_Activate &cmd, ResponseContainer &)
Response::ResponseCode cmdReloadConfig (const Command_ReloadConfig &, ResponseContainer &)
Response::ResponseCode cmdAdjustMod (const Command_AdjustMod &cmd, ResponseContainer &)
Response::ResponseCode cmdForgotPasswordRequest (const Command_ForgotPasswordRequest &cmd, ResponseContainer &rc)
Response::ResponseCode continuePasswordRequest (const QString &userName, const QString &clientId, ResponseContainer &rc, bool challenged=false)
Response::ResponseCode cmdForgotPasswordReset (const Command_ForgotPasswordReset &cmd, ResponseContainer &rc)
Response::ResponseCode cmdForgotPasswordChallenge (const Command_ForgotPasswordChallenge &cmd, ResponseContainer &rc)
Response::ResponseCode cmdRequestPasswordSalt (const Command_RequestPasswordSalt &cmd, ResponseContainer &rc)
Response::ResponseCode processExtendedSessionCommand (int cmdType, const SessionCommand &cmd, ResponseContainer &rc)
Response::ResponseCode processExtendedModeratorCommand (int cmdType, const ModeratorCommand &cmd, ResponseContainer &rc)
Response::ResponseCode processExtendedAdminCommand (int cmdType, const AdminCommand &cmd, ResponseContainer &rc)
Response::ResponseCode cmdAccountEdit (const Command_AccountEdit &cmd, ResponseContainer &rc)
Response::ResponseCode cmdAccountImage (const Command_AccountImage &cmd, ResponseContainer &rc)
Response::ResponseCode cmdAccountPassword (const Command_AccountPassword &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGrantReplayAccess (const Command_GrantReplayAccess &cmd, ResponseContainer &rc)
Response::ResponseCode cmdForceActivateUser (const Command_ForceActivateUser &cmd, ResponseContainer &rc)
Response::ResponseCode cmdGetAdminNotes (const Command_GetAdminNotes &cmd, ResponseContainer &rc)
Response::ResponseCode cmdUpdateAdminNotes (const Command_UpdateAdminNotes &cmd, ResponseContainer &rc)
bool addAdminFlagToUser (const QString &user, int flag)
bool removeAdminFlagFromUser (const QString &user, int flag)
bool isPasswordLongEnough (const int passwordLength)
void removeSaidMessages (const QString &userName, int amount)

Private Attributes

Servatrice_DatabaseInterfacesqlInterface

Additional Inherited Members

Public Slots inherited from Server_ProtocolHandler
void prepareDestroy ()
Static Public Member Functions inherited from Server_AbstractUserInterface
static SessionEvent * prepareSessionEvent (const ::google::protobuf::Message &sessionEvent)

Constructor & Destructor Documentation

◆ AbstractServerSocketInterface()

AbstractServerSocketInterface::AbstractServerSocketInterface ( Servatrice * _server,
Servatrice_DatabaseInterface * _databaseInterface,
QObject * parent = 0 )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~AbstractServerSocketInterface()

AbstractServerSocketInterface::~AbstractServerSocketInterface ( )
inline

Member Function Documentation

◆ addAdminFlagToUser()

bool AbstractServerSocketInterface::addAdminFlagToUser ( const QString & user,
int flag )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ catchSocketDisconnected

void AbstractServerSocketInterface::catchSocketDisconnected ( )
protectedslot
Here is the call graph for this function:
Here is the caller graph for this function:

◆ catchSocketError

void AbstractServerSocketInterface::catchSocketError ( QAbstractSocket::SocketError socketError)
protectedslot
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdAccountEdit()

Response::ResponseCode AbstractServerSocketInterface::cmdAccountEdit ( const Command_AccountEdit & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdAccountImage()

Response::ResponseCode AbstractServerSocketInterface::cmdAccountImage ( const Command_AccountImage & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdAccountPassword()

Response::ResponseCode AbstractServerSocketInterface::cmdAccountPassword ( const Command_AccountPassword & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdActivateAccount()

Response::ResponseCode AbstractServerSocketInterface::cmdActivateAccount ( const Command_Activate & cmd,
ResponseContainer &  )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdAddToList()

Response::ResponseCode AbstractServerSocketInterface::cmdAddToList ( const Command_AddToList & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdAdjustMod()

Response::ResponseCode AbstractServerSocketInterface::cmdAdjustMod ( const Command_AdjustMod & cmd,
ResponseContainer &  )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdBanFromServer()

Response::ResponseCode AbstractServerSocketInterface::cmdBanFromServer ( const Command_BanFromServer & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdDeckDel()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckDel ( const Command_DeckDel & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdDeckDelDir()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckDelDir ( const Command_DeckDelDir & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdDeckDownload()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckDownload ( const Command_DeckDownload & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdDeckList()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckList ( const Command_DeckList & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdDeckNewDir()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckNewDir ( const Command_DeckNewDir & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdDeckUpload()

Response::ResponseCode AbstractServerSocketInterface::cmdDeckUpload ( const Command_DeckUpload & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdForceActivateUser()

Response::ResponseCode AbstractServerSocketInterface::cmdForceActivateUser ( const Command_ForceActivateUser & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdForgotPasswordChallenge()

Response::ResponseCode AbstractServerSocketInterface::cmdForgotPasswordChallenge ( const Command_ForgotPasswordChallenge & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdForgotPasswordRequest()

Response::ResponseCode AbstractServerSocketInterface::cmdForgotPasswordRequest ( const Command_ForgotPasswordRequest & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdForgotPasswordReset()

Response::ResponseCode AbstractServerSocketInterface::cmdForgotPasswordReset ( const Command_ForgotPasswordReset & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGetAdminNotes()

Response::ResponseCode AbstractServerSocketInterface::cmdGetAdminNotes ( const Command_GetAdminNotes & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGetBanHistory()

Response::ResponseCode AbstractServerSocketInterface::cmdGetBanHistory ( const Command_GetBanHistory & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGetLogHistory()

Response::ResponseCode AbstractServerSocketInterface::cmdGetLogHistory ( const Command_ViewLogHistory & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGetWarnHistory()

Response::ResponseCode AbstractServerSocketInterface::cmdGetWarnHistory ( const Command_GetWarnHistory & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGetWarnList()

Response::ResponseCode AbstractServerSocketInterface::cmdGetWarnList ( const Command_GetWarnList & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdGrantReplayAccess()

Response::ResponseCode AbstractServerSocketInterface::cmdGrantReplayAccess ( const Command_GrantReplayAccess & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdRegisterAccount()

Response::ResponseCode AbstractServerSocketInterface::cmdRegisterAccount ( const Command_Register & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdReloadConfig()

Response::ResponseCode AbstractServerSocketInterface::cmdReloadConfig ( const Command_ReloadConfig & ,
ResponseContainer &  )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdRemoveFromList()

Response::ResponseCode AbstractServerSocketInterface::cmdRemoveFromList ( const Command_RemoveFromList & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdReplayDeleteMatch()

Response::ResponseCode AbstractServerSocketInterface::cmdReplayDeleteMatch ( const Command_ReplayDeleteMatch & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdReplayDownload()

Response::ResponseCode AbstractServerSocketInterface::cmdReplayDownload ( const Command_ReplayDownload & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdReplayGetCode()

Response::ResponseCode AbstractServerSocketInterface::cmdReplayGetCode ( const Command_ReplayGetCode & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdReplayList()

Response::ResponseCode AbstractServerSocketInterface::cmdReplayList ( const Command_ReplayList & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdReplayModifyMatch()

Response::ResponseCode AbstractServerSocketInterface::cmdReplayModifyMatch ( const Command_ReplayModifyMatch & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdReplaySubmitCode()

Response::ResponseCode AbstractServerSocketInterface::cmdReplaySubmitCode ( const Command_ReplaySubmitCode & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdRequestPasswordSalt()

Response::ResponseCode AbstractServerSocketInterface::cmdRequestPasswordSalt ( const Command_RequestPasswordSalt & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdShutdownServer()

Response::ResponseCode AbstractServerSocketInterface::cmdShutdownServer ( const Command_ShutdownServer & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ cmdUpdateAdminNotes()

Response::ResponseCode AbstractServerSocketInterface::cmdUpdateAdminNotes ( const Command_UpdateAdminNotes & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdUpdateServerMessage()

Response::ResponseCode AbstractServerSocketInterface::cmdUpdateServerMessage ( const Command_UpdateServerMessage & cmd,
ResponseContainer & rc )
private
Here is the caller graph for this function:

◆ cmdWarnUser()

Response::ResponseCode AbstractServerSocketInterface::cmdWarnUser ( const Command_WarnUser & cmd,
ResponseContainer & rc )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ continuePasswordRequest()

Response::ResponseCode AbstractServerSocketInterface::continuePasswordRequest ( const QString & userName,
const QString & clientId,
ResponseContainer & rc,
bool challenged = false )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ createHashForReplay()

QString AbstractServerSocketInterface::createHashForReplay ( int gameId)
private

Generates a hash for the given replay folder, used for auth when replay sharing. This is a separate function in case we change the hash implementation in the future.

Currently, we append together the first 128 bytes of the first 3 replays in the game. Then we md5 hash it, base64 encode it, and truncate the result to 10 characters.

Parameters
gameIdThe replay match to hash
Returns
The hash as a QString. Returns an empty string if failed
Here is the caller graph for this function:

◆ deckDelDirHelper()

void AbstractServerSocketInterface::deckDelDirHelper ( int basePathId)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ deckListHelper()

bool AbstractServerSocketInterface::deckListHelper ( int folderId,
ServerInfo_DeckStorage_Folder * folder )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ flushOutputQueue

virtual void AbstractServerSocketInterface::flushOutputQueue ( )
protectedpure virtualslot
Here is the caller graph for this function:

◆ flushSocket()

virtual void AbstractServerSocketInterface::flushSocket ( )
protectedpure virtual

◆ getAddress()

virtual QString AbstractServerSocketInterface::getAddress ( ) const
pure virtual

Implements Server_ProtocolHandler.

Implemented in TcpServerSocketInterface, and WebsocketServerSocketInterface.

Here is the caller graph for this function:

◆ getDeckFromDatabase()

DeckList * AbstractServerSocketInterface::getDeckFromDatabase ( int deckId)
private

◆ getDeckPathId() [1/2]

int AbstractServerSocketInterface::getDeckPathId ( const QString & path)
private
Here is the call graph for this function:

◆ getDeckPathId() [2/2]

int AbstractServerSocketInterface::getDeckPathId ( int basePathId,
QStringList path )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPeerAddress()

virtual QHostAddress AbstractServerSocketInterface::getPeerAddress ( ) const
pure virtual

Implemented in TcpServerSocketInterface, and WebsocketServerSocketInterface.

Here is the caller graph for this function:

◆ incTxBytes

void AbstractServerSocketInterface::incTxBytes ( qint64 amount)
signal
Here is the caller graph for this function:

◆ initSession()

bool AbstractServerSocketInterface::initSession ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ isPasswordLongEnough()

bool AbstractServerSocketInterface::isPasswordLongEnough ( const int passwordLength)
private
Here is the caller graph for this function:

◆ logDebugMessage()

void AbstractServerSocketInterface::logDebugMessage ( const QString & message)
protectedvirtual

Reimplemented from Server_ProtocolHandler.

Here is the caller graph for this function:

◆ outputQueueChanged

void AbstractServerSocketInterface::outputQueueChanged ( )
signal
Here is the caller graph for this function:

◆ processExtendedAdminCommand()

Response::ResponseCode AbstractServerSocketInterface::processExtendedAdminCommand ( int cmdType,
const AdminCommand & cmd,
ResponseContainer & rc )
privatevirtual

Reimplemented from Server_ProtocolHandler.

Here is the call graph for this function:

◆ processExtendedModeratorCommand()

Response::ResponseCode AbstractServerSocketInterface::processExtendedModeratorCommand ( int cmdType,
const ModeratorCommand & cmd,
ResponseContainer & rc )
privatevirtual

Reimplemented from Server_ProtocolHandler.

Here is the call graph for this function:

◆ processExtendedSessionCommand()

Response::ResponseCode AbstractServerSocketInterface::processExtendedSessionCommand ( int cmdType,
const SessionCommand & cmd,
ResponseContainer & rc )
privatevirtual

Reimplemented from Server_ProtocolHandler.

Here is the call graph for this function:

◆ removeAdminFlagFromUser()

bool AbstractServerSocketInterface::removeAdminFlagFromUser ( const QString & user,
int flag )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeSaidMessages()

void AbstractServerSocketInterface::removeSaidMessages ( const QString & userName,
int amount )
private
Here is the caller graph for this function:

◆ sendServerMessage()

void AbstractServerSocketInterface::sendServerMessage ( const QString userName,
const QString message )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ tooManyRegistrationAttempts()

bool AbstractServerSocketInterface::tooManyRegistrationAttempts ( const QString & ipAddress)
protected
Here is the caller graph for this function:

◆ transmitProtocolItem()

void AbstractServerSocketInterface::transmitProtocolItem ( const ServerMessage & item)
virtual

Implements Server_ProtocolHandler.

Here is the call graph for this function:

◆ writeToSocket()

virtual void AbstractServerSocketInterface::writeToSocket ( QByteArray & data)
protectedpure virtual

Member Data Documentation

◆ outputQueue

QList<ServerMessage> AbstractServerSocketInterface::outputQueue
protected

◆ outputQueueMutex

QMutex AbstractServerSocketInterface::outputQueueMutex
protected

◆ servatrice

Servatrice* AbstractServerSocketInterface::servatrice
protected

◆ sqlInterface

Servatrice_DatabaseInterface* AbstractServerSocketInterface::sqlInterface
private

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