Riferimenti per la classe Player

#include <Player.h>

Diagramma delle classi per Player

Inheritance graph
[legenda]
Diagramma di collaborazione per Player:

Collaboration graph
[legenda]
Lista di tutti i membri.

Descrizione Dettagliata

Player per MGS.

Questa Classe rappresenta l'utente che si connette a MGS.
Per poter gestire l'I-O da e verso l'Utente, la Classe eredita, ma con visibilita' private da TCPStream, che fornisce alcuni metodi utili all'interazione con l'utente (ed il relativo stream/socket).
Questa Classe e' stata pensata per essere "wrappata" da un'altra classe, a seconda del tipo di Game a cui l'utente deve partecipare.
E' comunque sufficiente per applicazioni semplici dove e' necessario SOLO lo scambio di stringhe/caratteri/messaggi

Definizione alla linea 34 del file Player.h.

Membri pubblici

 Player (const string &, const TCPStream &, Thread *)
 Costruttore della Classe Player.

virtual ~Player (void)
 Distruttore Classe Player.

virtual string getName (void) const
 Ritorna il nome/nick del Player.

virtual void say (const string &)
 Invia un messaggio all'Utente (overloaded).

virtual void say (const double)
virtual void say (const int)
virtual string hear (const timeout_t=TIMEOUT_INF)
virtual void suspendConnHandler (void)
 Sospendi il Thread "ConnectionHandler" che gestisce la connessione dell'Utente con MGS.

virtual void resumeConnHandler (void)
 Riattiva il Thread "ConnectionHandler" che gestisce la connessione dell'Utente con MGS.


Attributi privati

string name
ThreadConnectionHandlerThread


Documentazione dei costruttori e dei distruttori

Player::Player const string &  newName,
const TCPStream newStream,
Thread newThread
 

Costruttore della Classe Player.

Parametri:
newName Nome/Nick del Player
newStream TCPStream contenente la Connessione dell'utente

Definizione alla linea 16 del file Player.cc.

00018                       : 
00019 TCPStream(newStream), name(newName), ConnectionHandlerThread(newThread) {}

Player::~Player void   )  [virtual]
 

Distruttore Classe Player.

Definizione alla linea 22 del file Player.cc.

00022 {}


Documentazione delle funzioni membro

string Player::getName void   )  const [virtual]
 

Ritorna il nome/nick del Player.

Definizione alla linea 25 del file Player.cc.

Riferimenti name.

Referenziato da ChatRoom::addPlayer(), ChatRoom::delPlayer(), e ConnectionHandler::run().

00025 {return name;}

virtual string Player::hear const   timeout_t = TIMEOUT_INF  )  [virtual]
 

void Player::resumeConnHandler void   )  [virtual]
 

Riattiva il Thread "ConnectionHandler" che gestisce la connessione dell'Utente con MGS.

Definizione alla linea 109 del file Player.cc.

Riferimenti ConnectionHandlerThread.

Referenziato da ChatRoom::delPlayer().

00109                                    {
00110    try {
00111       ConnectionHandlerThread->resume();
00112    }
00113    catch(Thread *t) {
00114       cout << "<Player msg> Exception Raised during ConnHeandler Resuming." 
00115          << endl;
00116    }
00117 }

virtual void Player::say const   int  )  [virtual]
 

virtual void Player::say const   double  )  [virtual]
 

void Player::say const string &  message  )  [virtual]
 

Invia un messaggio all'Utente (overloaded).

Parametri:
message Stringa contenente il messaggio

Definizione alla linea 31 del file Player.cc.

Referenziato da ChatRoom::addPlayer(), e ChatRoom::delPlayer().

00031                                       {
00032    try {
00033       *tcp() << message;
00034       TCPStream::sync();
00035    }
00036    catch (iostream::failure *stream) {
00037       cout << "<Player msg> Exception Raised during IOSTREAM write." << endl;
00038    }
00039 }

void Player::suspendConnHandler void   )  [virtual]
 

Sospendi il Thread "ConnectionHandler" che gestisce la connessione dell'Utente con MGS.

Definizione alla linea 96 del file Player.cc.

Riferimenti ConnectionHandlerThread.

Referenziato da ConnectionHandler::run().

00096                                     {
00097    try {
00098       ConnectionHandlerThread->suspend();
00099    }
00100    catch(Thread *t) {
00101       cout << "<Player msg> Exception Raised during ConnHeandler Suspending."
00102          << endl;
00103    }
00104 }


Documentazione dei dati membri

Thread* Player::ConnectionHandlerThread [private]
 

Definizione alla linea 48 del file Player.h.

Referenziato da resumeConnHandler(), e suspendConnHandler().

string Player::name [private]
 

Definizione alla linea 47 del file Player.h.

Referenziato da getName().


La documentazione per questa classe è stata generata a partire dai seguenti file:
Generato il Sun Nov 28 13:27:29 2004 per MGS - Multithreaded Game Server da doxygen 1.3.4