/// Called to read a subclass's packet data from the packet.
virtualvoidread_packet(bit_stream&bstream){}
/// Called to prepare the connection for packet writing.
virtualvoidprepare_write_packet(){}
///
/// Any setup work to determine if there is_data_to_transmit() should happen in
/// this function. prepare_write_packet should _always_ call the Parent:: function.
/// Called to write a subclass's packet data into the packet.Information about what the instance wrote into the packet can be attached to the notify ref_object.
/// Called when the packet associated with the specified notify is known to have been received by the remote host. Packets are guaranteed to be notified in the order in which they were sent.
virtualvoidpacketReceived(packet_notify*note)
{
}
/// Called when the packet associated with the specified notify is known to have been not received by the remote host. Packets are guaranteed to be notified in the order in which they were sent.
virtualvoidpacketDropped(packet_notify*note)
{
}
/// Allocates a data record to track data sent on an individual packet. If you need to track additional notification information, you'll have to override this so you allocate a subclass of packet_notify with extra fields.