SLikeNet 0.1.3

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Attributes | List of all members
SLNet::InternalPacket Struct Reference

`#include <slikenet/InternalPacket.h>`

Inheritance diagram for SLNet::InternalPacket:

## Public Types

enum | AllocationScheme { NORMAL, REF_COUNTED, STACK }
| How to alloc and delete the data member. More...

## Public Attributes

MessageNumberType | messageInternalOrder
| Identifies the order in which this number was sent. Used locally.
bool | messageNumberAssigned
SLNet::TimeUS | creationTime
| Was this packet number used this update to track windowing drops or increases? Each packet number is only used once per update.
SLNet::TimeUS | nextActionTime
| The resendNext time to take action on this packet.
SLNet::TimeUS | retransmissionTime
BitSize_t | headerLength
unsigned char * | data
| Buffer is a pointer to the actual data, assuming this packet has data at all.
enum SLNet::InternalPacket::AllocationScheme | allocationScheme
InternalPacketRefCountedData * | refCountedData
unsigned char | timesSent
| How many attempts we made at sending this message.
PacketPriority | priority
| The priority level of this packet.
uint32_t | sendReceiptSerial
| If the reliability type requires a receipt, then return this number with it.
InternalPacket * | resendPrev
InternalPacket * | resendNext
InternalPacket * | unreliablePrev
InternalPacket * | unreliableNext
unsigned char | stackData [128]
Public Attributes inherited from SLNet::InternalPacketFixedSizeTransmissionHeader
MessageNumberType | reliableMessageNumber
| A unique numerical identifier given to this user message. Used to identify reliable messages on the network.
OrderingIndexType | orderingIndex
| The ID used as identification for ordering messages. Also included in sequenced messages.
OrderingIndexType | sequencingIndex
unsigned char | orderingChannel
| What ordering channel this packet is on, if the reliability type uses ordering channels.
SplitPacketIdType | splitPacketId
| The ID of the split packet, if we have split packets. This is the maximum number of split messages we can send simultaneously per connection.
SplitPacketIndexType | splitPacketIndex
| If this is a split packet, the index into the array of subsplit packets.
SplitPacketIndexType | splitPacketCount
| The size of the array of subsplit packets.
BitSize_t | dataBitLength
| How many bits long the data is.
PacketReliability | reliability
| What type of reliability algorithm to use with this packet.

## Detailed Description

Holds a user message, and related information Don't use a constructor or destructor, due to the memory pool I am using

Definition at line 84 of file InternalPacket.h.

## Member Enumeration Documentation

enum SLNet::InternalPacket::AllocationScheme

How to alloc and delete the data member.

Enumerator:

  NORMAL | Data is allocated using rakMalloc. Just free it.
  REF_COUNTED | data points to a larger block of data, where the larger block is reference counted. internalPacketRefCountedData is used in this case
  STACK | If allocation scheme is STACK, data points to stackData and should not be deallocated This is only used when sending. Received packets are deallocated in RakPeer

Definition at line 105 of file InternalPacket.h.

## Member Data Documentation

enum SLNet::InternalPacket::AllocationScheme SLNet::InternalPacket::allocationScheme

SLNet::TimeUS SLNet::InternalPacket::creationTime

Was this packet number used this update to track windowing drops or increases? Each packet number is only used once per update.

When this packet was created

Definition at line 95 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Send(), and SLNet::ReliabilityLayer::Update().

unsigned char* SLNet::InternalPacket::data

Buffer is a pointer to the actual data, assuming this packet has data at all.

Definition at line 103 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::HandleSocketReceiveFromConnectedPlayer(), SLNet::ReliabilityLayer::Receive(), SLNet::ReliabilityLayer::Send(), and SLNet::ReliabilityLayer::Update().

BitSize_t SLNet::InternalPacket::headerLength

Definition at line 101 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Update().

MessageNumberType SLNet::InternalPacket::messageInternalOrder

Identifies the order in which this number was sent. Used locally.

Definition at line 87 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Send().

bool SLNet::InternalPacket::messageNumberAssigned

Has this message number been assigned yet? We don't assign until the message is actually sent. This fixes a bug where pre-determining message numbers and then sending a message on a different channel creates a huge gap. This causes performance problems and causes those messages to timeout.

Definition at line 91 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Send(), and SLNet::ReliabilityLayer::Update().

SLNet::TimeUS SLNet::InternalPacket::nextActionTime

The resendNext time to take action on this packet.

Definition at line 97 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::HandleSocketReceiveFromConnectedPlayer(), and SLNet::ReliabilityLayer::Update().

PacketPriority SLNet::InternalPacket::priority

The priority level of this packet.

Definition at line 121 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Send(), and SLNet::ReliabilityLayer::Update().

InternalPacketRefCountedData* SLNet::InternalPacket::refCountedData

Definition at line 117 of file InternalPacket.h.

InternalPacket * SLNet::InternalPacket::resendNext

Definition at line 127 of file InternalPacket.h.

InternalPacket* SLNet::InternalPacket::resendPrev

Definition at line 127 of file InternalPacket.h.

SLNet::TimeUS SLNet::InternalPacket::retransmissionTime

Definition at line 99 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Update().

uint32_t SLNet::InternalPacket::sendReceiptSerial

If the reliability type requires a receipt, then return this number with it.

Definition at line 123 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Send(), and SLNet::ReliabilityLayer::Update().

unsigned char SLNet::InternalPacket::stackData[128]

Definition at line 129 of file InternalPacket.h.

unsigned char SLNet::InternalPacket::timesSent

How many attempts we made at sending this message.

Definition at line 119 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Update().

InternalPacket * SLNet::InternalPacket::unreliableNext

Definition at line 127 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Update().

InternalPacket * SLNet::InternalPacket::unreliablePrev

Definition at line 127 of file InternalPacket.h.

Referenced by SLNet::ReliabilityLayer::Update().

The documentation for this struct was generated from the following file:

- Source/include/slikenet/InternalPacket.h