Wireless Class Reference#include <Wireless.h>
List of all members.
Detailed Description
Tekkotsu wireless class.
For more information on using wireless, please read the following tutorials:
The networking interface needs more documentation. It also needs a cleanup. In the mean time, take a look at the TekkotsuMon objects in Tekkotsu/Behaviors/Mon . They all listen for new connections. Unfortunately, at the momement there are no examples of outgoing connections, but it should give you a pretty good idea how to start moving.
Definition at line 33 of file Wireless.h.
|
Public Member Functions |
| Wireless () |
| constructor - only one wireless object is required per Aperios process.
|
| ~Wireless () |
| destructor
|
int | listen (int sock, int port) |
| The socket waits for incoming connections.
|
int | connect (int sock, const char *ipaddr, int port) |
| The socket tries to connect to a specific.
|
void | setReceiver (int sock, int(*rcvcbckfn)(char *, int)) |
| sets receiver callback for a socket
|
void | setDaemon (int sock, bool val=true) |
| sets the socket to be a daemon (recycles on close)
|
void | close (int sock) |
| closes and destroys non server, daemon sockets
|
|
Socket * | socket (TransportType_t ttype) |
| Creates a new socket.
|
Socket * | socket (TransportType_t ttype, int recvsize, int sendsize) |
|
bool | isConnected (int sock) |
| utility function that you can use if you're curious about the state of the socket.
|
bool | isReady (int sock) |
| utility function that you can use if you're curious about the state of the socket.
|
bool | hasData (int sock) |
| utility function that you can use if you're curious about the state of the socket.
|
|
void | setReceiver (Socket &sobj, int(*rcvcbckfn)(char *, int)) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
void | setReceiver (Socket *sobj, int(*rcvcbckfn)(char *, int)) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
void | setDaemon (Socket &sobj, bool val=true) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
void | setDaemon (Socket *sobj, bool val=true) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
int | listen (Socket &sobj, int port) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
int | listen (Socket *sobj, int port) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
int | connect (Socket &sobj, const char *ipaddr, int port) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
int | connect (Socket *sobj, const char *ipaddr, int port) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
void | close (Socket &sobj) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
void | close (Socket *sobj) |
| helper function for the function with the same name that takes a socket descriptor (int)
|
|
void | receive (int sock, int(*rcvcbckfn)(char *, int)) |
| function for internal and Socket use. You should not call this
|
void | receive (int sock) |
| function for internal and Socket use. You should not call this
|
|
void | send (int sock) |
void | blockingSend (int sock) |
|
void | ListenCont (void *msg) |
void | BindCont (void *msg) |
void | ConnectCont (void *msg) |
void | SendCont (void *msg) |
void | ReceiveCont (void *msg) |
void | CloseCont (void *msg) |
Static Public Attributes |
const int | WIRELESS_MAX_SOCKETS = 100 |
| Maximum number of sockets which can be created.
|
const int | WIRELESS_DEF_RECV_SIZE = 1024 |
| Default number of bytes to use for receive buffers (overridden by value passed to socket()).
|
const int | WIRELESS_DEF_SEND_SIZE = 1024 |
| Default number of bytes to use for send buffers (overridden by value passed to socket()).
|
Private Member Functions |
| Wireless (const Wireless &) |
| don't call
|
Wireless & | operator= (const Wireless &) |
| don't call
|
Private Attributes |
|
antStackRef | ipstackRef |
| private ALOKL_TODO
|
OID | myOID |
| private ALOKL_TODO
|
Socket * | sockets [WIRELESS_MAX_SOCKETS] |
| private ALOKL_TODO
|
list< int > | freeSockets |
| private ALOKL_TODO
|
Constructor & Destructor Documentation
|
constructor - only one wireless object is required per Aperios process.
MMCombo already creates one. The (global) instance is called wireless, and you can access it by including Wireless/Wireless.h (this file) in your code
Definition at line 16 of file Wireless.cc. |
Wireless::Wireless |
( |
const Wireless & |
|
) |
[private] |
|
Member Function Documentation
void Wireless::BindCont |
( |
void * |
msg |
) |
|
|
|
callback function for communicating with Aperios Networking Toolkit. You should not call this.
Definition at line 212 of file Wireless.cc.
Referenced by MMCombo::BindCont(). |
void Wireless::blockingSend |
( |
int |
sock |
) |
|
|
|
- Bug:
- This doesn't actually seem to block until the message is fully sent... a crash immediately after this will still cause a line or two to be dropped. This is still less dropped than regular send, but doesn't do much good for debugging until we fix this. (if we can...)
Definition at line 293 of file Wireless.cc.
Referenced by Socket::flush(). |
void Wireless::close |
( |
Socket * |
sobj |
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 106 of file Wireless.h. |
void Wireless::close |
( |
Socket & |
sobj |
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 105 of file Wireless.h. |
void Wireless::close |
( |
int |
sock |
) |
|
|
|
closes and destroys non server, daemon sockets
Definition at line 436 of file Wireless.cc.
Referenced by WMMonitorBehavior::DoStop(), WalkControllerBehavior::DoStop(), SegCamBehavior::DoStop(), RawCamBehavior::DoStop(), MMCombo::DoStop(), HeadPointControllerBehavior::DoStop(), EStopControllerBehavior::DoStop(), Controller::DoStop(), Aibo3DControllerBehavior::DoStop(), ReceiveCont(), and SendCont(). |
void Wireless::CloseCont |
( |
void * |
msg |
) |
|
|
|
callback function for communicating with Aperios Networking Toolkit. You should not call this.
Definition at line 468 of file Wireless.cc.
Referenced by MMCombo::CloseCont(). |
int Wireless::connect |
( |
Socket * |
sobj, |
|
|
const char * |
ipaddr, |
|
|
int |
port |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 103 of file Wireless.h. |
int Wireless::connect |
( |
Socket & |
sobj, |
|
|
const char * |
ipaddr, |
|
|
int |
port |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 101 of file Wireless.h. |
int Wireless::connect |
( |
int |
sock, |
|
|
const char * |
ipaddr, |
|
|
int |
port |
|
) |
|
|
|
The socket tries to connect to a specific.
Tell the ipstack we want to recieve messages with this function.
Definition at line 124 of file Wireless.cc.
Referenced by ReceiveCont(). |
void Wireless::ConnectCont |
( |
void * |
msg |
) |
|
|
bool Wireless::hasData |
( |
int |
sock |
) |
[inline] |
|
|
utility function that you can use if you're curious about the state of the socket.
You shouldn't need to use it, since asking sockets for write and read buffers does the necessary sanity checks
Definition at line 88 of file Wireless.h. |
bool Wireless::isConnected |
( |
int |
sock |
) |
[inline] |
|
bool Wireless::isReady |
( |
int |
sock |
) |
[inline] |
|
|
utility function that you can use if you're curious about the state of the socket.
You shouldn't need to use it, since asking sockets for write and read buffers does the necessary sanity checks
Definition at line 87 of file Wireless.h. |
int Wireless::listen |
( |
Socket * |
sobj, |
|
|
int |
port |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 100 of file Wireless.h. |
int Wireless::listen |
( |
Socket & |
sobj, |
|
|
int |
port |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 99 of file Wireless.h. |
int Wireless::listen |
( |
int |
sock, |
|
|
int |
port |
|
) |
|
|
|
The socket waits for incoming connections.
That is, it acts like a server. If a connection is established and later broken, it resumes waiting for new connections.
Definition at line 75 of file Wireless.cc.
Referenced by CloseCont(), WMMonitorBehavior::DoStart(), WalkControllerBehavior::DoStart(), SegCamBehavior::DoStart(), RawCamBehavior::DoStart(), MMCombo::DoStart(), HeadPointControllerBehavior::DoStart(), EStopControllerBehavior::DoStart(), Controller::DoStart(), Aibo3DControllerBehavior::DoStart(), and WorldStateSerializerBehavior::WorldStateSerializerBehavior(). |
void Wireless::ListenCont |
( |
void * |
msg |
) |
|
|
|
callback function for communicating with Aperios Networking Toolkit. You should not call this.
Definition at line 169 of file Wireless.cc.
Referenced by MMCombo::ListenCont(). |
void Wireless::receive |
( |
int |
sock |
) |
|
|
|
function for internal and Socket use. You should not call this
Definition at line 321 of file Wireless.cc. |
void Wireless::receive |
( |
int |
sock, |
|
|
int(*)(char *, int) |
rcvcbckfn |
|
) |
|
|
void Wireless::ReceiveCont |
( |
void * |
msg |
) |
|
|
void Wireless::send |
( |
int |
sock |
) |
|
|
|
function called by the Socket objects to actually write data to the network. You should not call this.
Definition at line 226 of file Wireless.cc.
Referenced by Socket::flush(). |
void Wireless::SendCont |
( |
void * |
msg |
) |
|
|
|
callback function for communicating with Aperios Networking Toolkit. You should not call this.
Definition at line 255 of file Wireless.cc.
Referenced by MMCombo::SendCont(). |
void Wireless::setDaemon |
( |
Socket * |
sobj, |
|
|
bool |
val = true |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 98 of file Wireless.h. |
void Wireless::setDaemon |
( |
Socket & |
sobj, |
|
|
bool |
val = true |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 97 of file Wireless.h. |
void Wireless::setDaemon |
( |
int |
sock, |
|
|
bool |
val = true |
|
) |
[inline] |
|
|
sets the socket to be a daemon (recycles on close)
Definition at line 76 of file Wireless.h.
Referenced by MMCombo::DoInit(), WMMonitorBehavior::DoStart(), WalkControllerBehavior::DoStart(), SegCamBehavior::DoStart(), RawCamBehavior::DoStart(), HeadPointControllerBehavior::DoStart(), EStopControllerBehavior::DoStart(), Controller::DoStart(), Aibo3DControllerBehavior::DoStart(), WMMonitorBehavior::DoStop(), WalkControllerBehavior::DoStop(), SegCamBehavior::DoStop(), RawCamBehavior::DoStop(), HeadPointControllerBehavior::DoStop(), EStopControllerBehavior::DoStop(), Controller::DoStop(), Aibo3DControllerBehavior::DoStop(), and WorldStateSerializerBehavior::WorldStateSerializerBehavior(). |
void Wireless::setReceiver |
( |
Socket * |
sobj, |
|
|
int(*)(char *, int) |
rcvcbckfn |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 95 of file Wireless.h. |
void Wireless::setReceiver |
( |
Socket & |
sobj, |
|
|
int(*)(char *, int) |
rcvcbckfn |
|
) |
[inline] |
|
|
helper function for the function with the same name that takes a socket descriptor (int)
Definition at line 93 of file Wireless.h. |
void Wireless::setReceiver |
( |
int |
sock, |
|
|
int(*)(char *, int) |
rcvcbckfn |
|
) |
|
|
|
- Parameters:
-
| ttype | selects between TCP and UDP |
| recvsize | size of input buffer |
| sendsize | size of output buffer |
Definition at line 39 of file Wireless.cc. |
|
Creates a new socket.
- Returns:
- pointer to Socket object created
- Parameters:
-
| ttype | selects between TCP and UDP |
- See also:
- WIRELESS_DEF_RECV_SIZE, WIRELESS_DEF_SEND_SIZE
Definition at line 34 of file Wireless.cc.
Referenced by MMCombo::DoInit(), WMMonitorBehavior::DoStart(), WalkControllerBehavior::DoStart(), SegCamBehavior::DoStart(), RawCamBehavior::DoStart(), HeadPointControllerBehavior::DoStart(), EStopControllerBehavior::DoStart(), Controller::DoStart(), Aibo3DControllerBehavior::DoStart(), and WorldStateSerializerBehavior::WorldStateSerializerBehavior(). |
Member Data Documentation
|
private ALOKL_TODO
Definition at line 139 of file Wireless.h.
Referenced by BindCont(), blockingSend(), close(), CloseCont(), connect(), ConnectCont(), listen(), ListenCont(), receive(), ReceiveCont(), send(), SendCont(), setReceiver(), socket(), and Wireless(). |
|
Default number of bytes to use for receive buffers (overridden by value passed to socket()).
Definition at line 39 of file Wireless.h.
Referenced by socket(). |
|
Default number of bytes to use for send buffers (overridden by value passed to socket()).
Definition at line 42 of file Wireless.h.
Referenced by socket(). |
The documentation for this class was generated from the following files:
|