Main Page Class Hierarchy Compound List File List Compound Members File Members

# TelepatiTcp Class Reference

Oggetto per la comunicazione TCP via Rete Wireless tra Aibo. More...

`#include <TelepatiTcp.h>`

List of all members.

## Public Methods
| TelepatiTcp ()
| Costruttore di Default.
virtual | ~TelepatiTcp ()
| Distruttore di default.
virtual OStatus | DoInit (const OSystemEvent &event)
| Entry Point Standard: Inizializza l'oggetto e le strutture per la comunicazione inter-object e di Rete. More...
virtual OStatus | DoStart (const OSystemEvent &event)
| Entry Point Standard: Attiva la comunicazione con gli altri Oggetti e via Rete. More...
virtual OStatus | DoStop (const OSystemEvent &event)
| Entry Point Standard: Ferma l'oggetto e la comunicazione. More...
virtual OStatus | DoDestroy (const OSystemEvent &event)
| Entry Point Standard: Distrugge le strutture inizializzate per l'inter-object comunication. More...
void | SendCont (ANTENVMSG msg)
| Extra Entry Point: spedisce il messaggio. More...
void | ReceiveCont (ANTENVMSG msg)
| Extra Entry Point: riceve il messaggio. More...
void | ListenCont (ANTENVMSG msg)
| Extra Entry Point: Attiva le ricezioni. More...
void | ConnectCont (ANTENVMSG msg)
| Extra Entry Point: Connette l'Aibo. More...
void | EtherStat (void *msg)
| Extra Entry Point: chiamato allo scadere del timer periodico di Statistiche di Rete. More...
void | SendNotify (const ONotifyEvent &event)
| Entry Point Standard: attua la comunicazione inter-object. More...
void | ObserverReady (const OReadyEvent &event)
| Funzione di Assert Ready. More...
## Public Attributes
OSubject * | subject [numOfSubject]
| Array dei subject dell'oggetto.
OObserver * | observer [numOfObserver]
| Array degli observer dell'oggetto.
## Static Public Attributes
const int | TELEPATI_BUFFER_SIZE = 65535
| Dimensione in byte dei buffer di ricezione/spedizione.
const longword | TELEPATI_BONE_TIME = 8
| Durata, in sec, del timer ciclico per il rilevamento dello stato di attivita' degli Aibo (vedi documentazione). More...
const int | TELEPATI_BASE_PORT = 30000
| Numero base delle porte TCP. More...
const int | TELEPATI_MAX_CONNECT_ERROR = 50
| Numero massimo di errori di connessioni consentite. More...
const int | TELEPATI_MAX_MESSAGE_TO_OBSERVER = 20
| Numero massimo di messaggi consecutivi all'observer. More...
const longword | TELEPATI_RECONNECT_TIME = 800000000
| Tempo di attesa di riconnessione. More...

## Detailed Description

Oggetto per la comunicazione TCP via Rete Wireless tra Aibo.

E' la versione basata sul protocollo TCP di Telepati. Si occupa di gestire la comunicazione di agenti cooperanti attraverso il protocollo TCP e la rete Wireless. E' un oggetto OPENR pertanto e' un processo che lavora in concorrenza con gli altri oggetti OPENR presenti nell'Aibo e comunica con loro attraverso lo scambio di messaggi (per informazioni sulla comunicazione inter-object e l'utilizzo di TelepatiTcp guardare il file Telepati1.1.doc). Attiva per ogni Aibo con cui comunicare una connessione per la spedizione ed una connessione per la ricezione. La numerazione delle porta TCP e' automatica: se l'i-esimo aibo vuole comunicare con il j-esimo, con i e j-esimo ci si riferisce al loro numero di riga nel file AIBONET, allora la porta a cui deve collegarsi sara' data da:@n TELEPATI_BASE_PORT+(<riga del i-esimo> * <numero_totale_righe>)+ <riga del j-esimo>.

## Member Function Documentation

void TelepatiTcp::ConnectCont | ( | ANTENVMSG | msg | ) |

| Extra Entry Point: Connette l'Aibo. Ha il compito di connettere l'Aibo con gli altri Aibo, viene avviata quando l'oggetto IPStack e' pronto a stabilire una connessione con l'Aibo specificato nel parametro msg.

OStatus TelepatiTcp::DoDestroy | ( | const OSystemEvent & | event | ) | `[virtual]`

| Entry Point Standard: Distrugge le strutture inizializzate per l'inter-object comunication. Returns: oSUCCESS se ha avuto successo; oFAIL altrimenti.

OStatus TelepatiTcp::DoInit | ( | const OSystemEvent & | event | ) | `[virtual]`

| Entry Point Standard: Inizializza l'oggetto e le strutture per la comunicazione inter-object e di Rete. Returns: oSUCCESS se ha avuto successo; oFAIL altrimenti

OStatus TelepatiTcp::DoStart | ( | const OSystemEvent & | event | ) | `[virtual]`

| Entry Point Standard: Attiva la comunicazione con gli altri Oggetti e via Rete. Returns: oSUCCESS se ha avuto successo; oFAIL altrimenti.

OStatus TelepatiTcp::DoStop | ( | const OSystemEvent & | event | ) | `[virtual]`

| Entry Point Standard: Ferma l'oggetto e la comunicazione. Returns: oSUCCESS se ha avuto successo; oFAIL altrimenti.

void TelepatiTcp::EtherStat | ( | void * | msg | ) |

| Extra Entry Point: chiamato allo scadere del timer periodico di Statistiche di Rete. E' attiva nel caso venga definita in compilazione OPENR_ETHERSTAT (gcc -DOPENR_ETHERSTAT) e stampa sulla console virtuale informazioni sullo stato della rete wireless.

void TelepatiTcp::ListenCont | ( | ANTENVMSG | msg | ) |

| Extra Entry Point: Attiva le ricezioni. Ha il compito di attivare la ricezione TCP dell'Aibo, viene avviata quando l'oggetto IPStack riceve una richiesta di connessione TCP all'Aibo stesso.

void TelepatiTcp::ObserverReady | ( | const OReadyEvent & | event | ) |

| Funzione di Assert Ready. Viene invocata al ricevimento da parte dell'observer dell'Assert Ready o del Deassert Ready.

void TelepatiTcp::ReceiveCont | ( | ANTENVMSG | msg | ) |

| Extra Entry Point: riceve il messaggio. Riceve dalla rete i messaggi attraverso IPStack e, se e' un messaggio di dati, lo inoltra all'oggetto observer.

void TelepatiTcp::SendCont | ( | ANTENVMSG | msg | ) |

  | Extra Entry Point: spedisce il messaggio. Quando l'oggetto OPENR IPStack (che si occua della gestione dello stack TCP/IP) avra' copiato tutti i dati nei suoi buffer, e saranno quindi riutilizzabili i buffer delle connessioni di spedizione, verra' invocata questa funzione. Parameters:
  msg | puntatore al messaggio spedito.

void TelepatiTcp::SendNotify | ( | const ONotifyEvent & | event | ) |

| Entry Point Standard: attua la comunicazione inter-object. Viene invocata al ricevimento di un messaggio da parte un oggetto OPEN-R subject e si occupa di spedire il messaggio attraverso la rete chiamando la funzione send(i) che spedisce il messaggio all'i-esimo Aibo attraverso la i-esima connessione di spedizione.

## Member Data Documentation

const int TelepatiTcp::TELEPATI_BASE_PORT = 30000`[static]`

| Numero base delle porte TCP. Rappresenta il numero base da cui parte la numerazione delle porte di ricezione / spedizione utilizzate dal protocollo TCP.

const longword TelepatiTcp::TELEPATI_BONE_TIME = 8`[static]`

| Durata, in sec, del timer ciclico per il rilevamento dello stato di attivita' degli Aibo (vedi documentazione). See also: BoneTimerEnd.

const int TelepatiTcp::TELEPATI_MAX_CONNECT_ERROR = 50`[static]`

| Numero massimo di errori di connessioni consentite. Superato il suo valore non verra' ritentata una riconnessione verso l'i-esimo Aibo.

const int TelepatiTcp::TELEPATI_MAX_MESSAGE_TO_OBSERVER = 20`[static]`

| Numero massimo di messaggi consecutivi all'observer. Rappresenta il numero massimo di messaggi che possono essere mandati all'observer senza prima ricevere un Asser Ready.

const longword TelepatiTcp::TELEPATI_RECONNECT_TIME = 800000000`[static]`

| Tempo di attesa di riconnessione. Tempo di attesa tra un tentativo di connessione ed un altro sulla stessa porta; espresso in nano secondi.

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

- /home/gilberto/prog/tesi2.31/TelepatiTcp/TelepatiTcp.h
- /home/gilberto/prog/tesi2.31/TelepatiTcp/TelepatiTcp.cc