#include <TelepatiTcp.h>
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... | |
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>.
|
|
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. |
|
|
Entry Point Standard: Distrugge le strutture inizializzate per l'inter-object comunication.
|
|
|
Entry Point Standard: Inizializza l'oggetto e le strutture per la comunicazione inter-object e di Rete.
|
|
|
Entry Point Standard: Attiva la comunicazione con gli altri Oggetti e via Rete.
|
|
|
Entry Point Standard: Ferma l'oggetto e la comunicazione.
|
|
|
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. |
|
|
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. |
|
|
Funzione di Assert Ready. Viene invocata al ricevimento da parte dell'observer dell'Assert Ready o del Deassert Ready. |
|
|
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. |
|
|
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.
|
|
|
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. |
|
|
Numero base delle porte TCP. Rappresenta il numero base da cui parte la numerazione delle porte di ricezione / spedizione utilizzate dal protocollo TCP. |
|
|
Durata, in sec, del timer ciclico per il rilevamento dello stato di attivita' degli Aibo (vedi documentazione).
|
|
|
Numero massimo di errori di connessioni consentite. Superato il suo valore non verra' ritentata una riconnessione verso l'i-esimo Aibo. |
|
|
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. |
|
|
Tempo di attesa di riconnessione. Tempo di attesa tra un tentativo di connessione ed un altro sulla stessa porta; espresso in nano secondi. |
1.2.14 written by Dimitri van Heesch,
© 1997-2002