Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

Telepati Class Reference

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

#include <Telepati.h>

List of all members.

Public Types

enum  { DATA_CONNECTION = 0, CTRL_CONNECTION = 1 }
 Tipi di connessioni di spedizione. More...

Public Member Functions

 Telepati ()
 Costruttore di Default.
virtual ~Telepati ()
 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.
virtual OStatus DoStart (const OSystemEvent &event)
 Entry Point Standard: Attiva la comunicazione con gli altri Oggetti e via Rete.
virtual OStatus DoStop (const OSystemEvent &event)
 Entry Point Standard: Ferma l'oggetto e la comunicazione.
virtual OStatus DoDestroy (const OSystemEvent &event)
 Entry Point Standard: Distrugge l'oggetto e le strutture inizializzate.
void SendCont (ANTENVMSG msg)
 Extra Entry Point: spedisce il messaggio.
void ReceiveCont (ANTENVMSG msg)
 Extra Entry Point: riceve il messaggio.
void TimerEnd (void *msg)
 Extra Entry Point: chiamato allo scadere del timer non periodico di Ack.
void BoneTimerEnd (void *msg)
 Extra Entry Point: chiamato allo scadere del timer periodico di Polling.
void EtherStat (void *msg)
 Extra Entry Point: chiamato allo scadere del timer periodico di Statistiche di Rete.
void SendNotify (const ONotifyEvent &event)
 Entry Point Standard: spedisce il messaggio ricevuto.

Public Attributes

OSubject * subject [numOfSubject]
 Array dei subject dell'oggetto.
OObserver * observer [numOfObserver]
 Array degli observer dell'oggetto.

Static Public Attributes

const Port TELEPATI_PORT = 3030
 Porta UDP di ricezione.
const int TELEPATI_BUFFER_SIZE = 1024
 Dimensione dei buffer di ricezione/spedizione.
const longword TELEPATI_ACK_TIME = 500
 Durata, in msec, dell'attesa per l'Ack.
const longword TELEPATI_BONE_TIME = 8
 Durata, in sec, del timer ciclico per il rilevamento dello stato di attivita' degli Aibo (vedi documentazione).


Detailed Description

Oggetto per la comunicazione UDP via Rete Wireless tra Aibo.

Si occupa di gestire la comunicazione di agenti cooperanti attraverso il protocollo UDP e la rete Wireless. E' un oggetto OPENR pertanto e' un processo che lavoro in concorrenza con gli altri oggetti OPENR presenti nell'Aibo e comunica con loro attraverso lo scambio di messaggi.


Member Enumeration Documentation

anonymous enum
 

Tipi di connessioni di spedizione.

Enumeration values:
DATA_CONNECTION  Connessione Data per la spedizione dei package normali.
CTRL_CONNECTION  Connessione di Controllo per la spedizione dei package di controllo (ACK, HI, HIREPLY, BYE).


Member Function Documentation

void Telepati::BoneTimerEnd void *  msg  ) 
 

Extra Entry Point: chiamato allo scadere del timer periodico di Polling.

Controlla che sia stata ricevuta una risposta al Hi, se non ricevuta pone l'Aibo di destinazione in stato INACTIVE, e manda Hi message a tutti gli Aibo in rete.

See also:
TELEPATI_BONE_TIME.

void Telepati::EtherStat void *  msg  ) 
 

Extra Entry Point: chiamato allo scadere del timer periodico di Statistiche di Rete.

E' attiva in caso di debug (#define OPENR_ETHERSTAT) e stampa sulla console virtuale informazioni sullo stato della rete wireless.

void Telepati::ReceiveCont ANTENVMSG  msg  ) 
 

Extra Entry Point: riceve il messaggio.

Riceve dalla rete i messaggi e li inoltra agli oggetti OPENR observer

void Telepati::SendCont ANTENVMSG  msg  ) 
 

Extra Entry Point: spedisce il messaggio.

Quando l'oggetto OPENR IPStack (che si occua della gestione dello stack TCP/IP) e' pronto a spedire un messaggio sulla rete avvia questa funzione.

void Telepati::SendNotify const ONotifyEvent &  event  ) 
 

Entry Point Standard: spedisce il messaggio ricevuto.

Si occupa di spedire il messaggio mandato dagli oggetti OPENR subject.

void Telepati::TimerEnd void *  msg  )  [inline]
 

Extra Entry Point: chiamato allo scadere del timer non periodico di Ack.

Controlla se e' stato ricevuto l'Ack per il messaggio spedito identificato dal suo numero seriale, se non ricevuto rispedisce il messaggio.


Member Data Documentation

const longword Telepati::TELEPATI_ACK_TIME = 500 [static]
 

Durata, in msec, dell'attesa per l'Ack.

See also:
TimerEnd(void* msg)

const longword Telepati::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.


The documentation for this class was generated from the following files:
Generated on Wed Nov 17 15:49:18 2004 for Telepati by  doxygen 1.3.9.1