#include <Player.h>
Diagramma delle classi per Player


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 |
| Thread * | ConnectionHandlerThread |
|
||||||||||||||||
|
Costruttore della Classe Player.
Definizione alla linea 16 del file Player.cc.
00018 : 00019 TCPStream(newStream), name(newName), ConnectionHandlerThread(newThread) {} |
|
|
Distruttore Classe Player.
Definizione alla linea 22 del file Player.cc.
00022 {}
|
|
|
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;}
|
|
|
|
|
|
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 }
|
|
|
|
|
|
|
|
|
Invia un messaggio all'Utente (overloaded).
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 }
|
|
|
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 }
|
|
|
Definizione alla linea 48 del file Player.h. Referenziato da resumeConnHandler(), e suspendConnHandler(). |
|
|
Definizione alla linea 47 del file Player.h. Referenziato da getName(). |
1.3.4