# InternalPacket Struct Reference

`#include <InternalPacket.h>`

List of all members.

## Public Attributes
MessageNumberType | messageNumber
| True if this is an acknowledgment packet.
MessageNumberType | messageInternalOrder
| Identifies the order in which this number was sent. Used locally.
bool | messageNumberAssigned
unsigned | packetNumber
| Used only for tracking packetloss and windowing internally, this is the aggreggate packet number that a message was last sent in.
PacketPriority | priority
| Was this packet number used this update to track windowing drops or increases? Each packet number is only used once per update.
PacketReliability | reliability
| What type of reliability algorithm to use with this packet.
unsigned char | orderingChannel
| What ordering channel this packet is on, if the reliability type uses ordering channels.
OrderingIndexType | orderingIndex
| The ID used as identification for 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.
RakNetTimeNS | creationTime
| When this packet was created.
RakNetTimeNS | nextActionTime
| The next time to take action on this packet.
BitSize_t | dataBitLength
| How many bits the data is.
unsigned char * | data
| Buffer is a pointer to the actual data, assuming this packet has data at all.

## Detailed Description

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

## Member Data Documentation

MessageNumberType InternalPacket::messageNumber

True if this is an acknowledgment packet.

A unique numerical identifier given to this user message. Used to identify messages on the network

bool 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.

PacketPriority InternalPacket::priority

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

The priority level of this packet

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

- C:/RakNet/Source/InternalPacket.h