|
|
The base class for all transmissions.
Typically a large number of Transmit objects could be queued for transmission. By the time a Transmit object is scheduled for transmission circumstances could have changed. It may no longer be appropriate to transmit this packet. Therefore allow a transmit object to become invalid. A single transmit object can generate a number of packets. For example for the database synchronisation process.
typedef ref_ptr<Transmit> TransmitRef | TransmitRef |
~Transmit ()
| ~Transmit |
[virtual]
bool valid ()
| valid |
[pure virtual]
Is this object still valid?
Returns: True if this transmit object is still valid.
bool multiple ()
| multiple |
[pure virtual]
A transmit object may be able to generate multiple packets; not just one.
Returns: True if this object can be invoked multiple times?
TransmitRef clone ()
| clone |
[pure virtual]
Make a copy of this object. If the same data is being sent to multiple locations, provide a mechanism to make a copy for each location.
uint8_t * generate (size_t &len)
| generate |
[pure virtual]
Generate a packet for transmission.
Parameters:
len | length of the encoded packet. |
Returns: A pointer that must be delete'd.
A destination ()
| destination |
[pure virtual]
Returns: the destination address of this packet.
A source ()
| source |
[pure virtual]
Returns: the source address of this packet.