Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

NetSenderBase Class Reference

Base class for NetSenders. More...

#include <NetSender.h>

Inheritance diagram for NetSenderBase:

Inheritance graph
[legend]
Collaboration diagram for NetSenderBase:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 NetSenderBase ()
 ~NetSenderBase ()
virtual void send (void)
void * getPackage (int newsize)
 gets more memory for the data to send.

void freePackage ()
 Frees the Memoy.

void setHandler (NetHandler *h)
 Sets the handler which is call after "streaming" the data into the memory to actually send the data.

void sendDone ()
 Called by the handler after sucessfully sending the data.


Public Attributes

NetHandlerhandler
 the associated NetHandler (a TCPHandler or an UDPHandler)

void * package
 pointer to the buffer

int size
 actual size of the buffer

bool sending
 true while sending the data

unsigned long sendStartTimeStamp
 time when send startet (hack for some dalay-measurements)

int senderNumber
 number of the sender if there are more than one associated to the same NetHandler


Detailed Description

Base class for NetSenders.

Has the template-independent parts.

Definition at line 14 of file NetSender.h.


Constructor & Destructor Documentation

NetSenderBase::NetSenderBase  )  [inline]
 

Definition at line 17 of file NetSender.h.

References senderNumber.

NetSenderBase::~NetSenderBase  )  [inline]
 

Definition at line 25 of file NetSender.h.

References freePackage().

Here is the call graph for this function:


Member Function Documentation

virtual void NetSenderBase::send void   )  [inline, virtual]
 

Reimplemented in NetSender< T >, NetDebugSender, and NetSender< MessageQueue >.

Definition at line 30 of file NetSender.h.

void* NetSenderBase::getPackage int  newsize  )  [inline]
 

gets more memory for the data to send.

To prevent memory-fragmentation on the robot this is only called for sizes bigger than the actual size

Parameters:
newsize The size of the buffer to get

Definition at line 37 of file NetSender.h.

References ASSERT.

Referenced by UDPHandler::addSenderAndReceiver(), NetDebugSender::send(), NetSender< MessageQueue >::send(), and TCPHandler::TCPHandler().

void NetSenderBase::freePackage  )  [inline]
 

Frees the Memoy.

Definition at line 54 of file NetSender.h.

Referenced by ~NetSenderBase().

void NetSenderBase::setHandler NetHandler h  )  [inline]
 

Sets the handler which is call after "streaming" the data into the memory to actually send the data.

Definition at line 66 of file NetSender.h.

References handler.

Referenced by UDPHandler::addSenderAndReceiver(), TCPHandler::setTransmitters(), and TCPHandler::TCPHandler().

void NetSenderBase::sendDone  )  [inline]
 

Called by the handler after sucessfully sending the data.

Definition at line 74 of file NetSender.h.

References sending.

Referenced by TCPHandler::onConnect(), UDPHandlerEndpoint::onSendingDone(), TCPHandler::onSendingDone(), and UDPHandlerEndpoint::sendPackage().


Member Data Documentation

NetHandler* NetSenderBase::handler
 

the associated NetHandler (a TCPHandler or an UDPHandler)

Definition at line 82 of file NetSender.h.

Referenced by setHandler().

void* NetSenderBase::package
 

pointer to the buffer

Definition at line 83 of file NetSender.h.

int NetSenderBase::size
 

actual size of the buffer

Definition at line 84 of file NetSender.h.

bool NetSenderBase::sending
 

true while sending the data

Definition at line 85 of file NetSender.h.

Referenced by sendDone().

unsigned long NetSenderBase::sendStartTimeStamp
 

time when send startet (hack for some dalay-measurements)

Definition at line 86 of file NetSender.h.

int NetSenderBase::senderNumber
 

number of the sender if there are more than one associated to the same NetHandler

Definition at line 87 of file NetSender.h.

Referenced by UDPHandler::addSenderAndReceiver(), NetSenderBase(), UDPHandlerEndpoint::onReceive(), and UDPHandlerEndpoint::sendPackage().


The documentation for this class was generated from the following file:
Generated on Thu Sep 23 20:09:53 2004 for GT2004 by doxygen 1.3.6