|
Public Member Functions |
| ReliabilityLayer () |
| ~ReliabilityLayer () |
void | Reset (void) |
void | SetEncryptionKey (const unsigned char *key) |
void | SetSocket (SOCKET s) |
SOCKET | GetSocket (void) |
bool | HandleSocketReceiveFromConnectedPlayer (char *buffer, int length) |
int | Receive (char **data) |
bool | Send (RakNet::BitStream *bitStream, PacketPriority priority, PacketReliability reliability, unsigned char orderingChannel, bool makeDataCopy, int MTUSize) |
void | Update (SOCKET s, PlayerID playerId, int MTUSize, unsigned long time) |
bool | IsCheater (void) const |
bool | IsDeadConnection (void) const |
void | SetLostPacketResendDelay (unsigned long i) |
RakNetStatisticsStruct *const | GetStatistics (void) |
Private Types |
enum | {
sendQueueSystemPriority_MUTEX,
sendQueueHighPriority_MUTEX,
sendQueueMediumPriority_MUTEX,
sendQueueLowPriority_MUTEX,
packetNumber_MUTEX,
waitingForOrderedPacketWriteIndex_MUTEX,
waitingForSequencedPacketWriteIndex_MUTEX,
NUMBER_OF_RELIABILITY_LAYER_MUTEXES
} |
Private Member Functions |
bool | IsFrameReady (unsigned long time) |
void | GenerateFrame (RakNet::BitStream *output, int MTUSize, bool *reliableDataSent, unsigned long time) |
void | SendBitStream (SOCKET s, PlayerID playerId, RakNet::BitStream *bitStream) |
int | WriteToBitStreamFromInternalPacket (RakNet::BitStream *bitStream, const InternalPacket *const internalPacket) |
InternalPacket * | CreateInternalPacketFromBitStream (RakNet::BitStream *bitStream, unsigned long time) |
void | RemovePacketFromResendQueueAndDeleteOlderReliableSequenced (PacketNumberType packetNumber) |
void | SendAcknowledgementPacket (PacketNumberType packetNumber, unsigned long time) |
bool | IsSendThrottled (void) |
void | UpdatePacketloss (unsigned long time) |
int | GetBitStreamHeaderLength (const InternalPacket *const internalPacket) |
void | GetSHA1 (unsigned char *const buffer, unsigned long nbytes, char code[SHA1_LENGTH]) |
bool | CheckSHA1 (char code[SHA1_LENGTH], unsigned char *const buffer, unsigned long nbytes) |
void | DeleteSequencedPacketsInList (unsigned char orderingChannel, BasicDataStructures::List< InternalPacket * > &theList, int splitPacketId=-1) |
void | DeleteSequencedPacketsInList (unsigned char orderingChannel, BasicDataStructures::Queue< InternalPacket * > &theList) |
bool | IsOlderOrderedPacket (unsigned char newPacketOrderingIndex, unsigned char waitingForPacketOrderingIndex) |
void | SplitPacketAndDeleteOriginal (InternalPacket *internalPacket, int MTUSize) |
void | InsertIntoSplitPacketList (InternalPacket *internalPacket) |
InternalPacket * | BuildPacketFromSplitPacketList (unsigned long splitPacketId, unsigned long time) |
void | DeleteOldUnreliableSplitPackets (unsigned long time) |
InternalPacket * | CreateInternalPacketCopy (InternalPacket *original, int dataByteOffset, int dataByteLength, unsigned long time) |
BasicDataStructures::LinkedList<
InternalPacket * > * | GetOrderingListAtOrderingStream (unsigned char orderingChannel) |
void | AddToOrderingList (InternalPacket *internalPacket) |
void | InsertPacketIntoResendQueue (InternalPacket *internalPacket, unsigned long time) |
void | FreeMemory (bool freeAllImmediately) |
void | FreeThreadedMemory (void) |
void | FreeThreadSafeMemory (void) |
void | InitializeVariables (void) |
Private Attributes |
SimpleMutex | reliabilityLayerMutexes [NUMBER_OF_RELIABILITY_LAYER_MUTEXES] |
BasicDataStructures::List<
InternalPacket * > | splitPacketList |
BasicDataStructures::List<
BasicDataStructures::LinkedList<
InternalPacket * > * > | orderingList |
BasicDataStructures::Queue<
InternalPacket * > | acknowledgementQueue |
BasicDataStructures::Queue<
InternalPacket * > | outputQueue |
BasicDataStructures::Queue<
InternalPacket * > | sendQueue [NUMBER_OF_PRIORITIES] |
BasicDataStructures::Queue<
InternalPacket * > | resendQueue |
PacketNumberType | packetNumber |
unsigned long | lastAckTime |
RakNet::BitStream | updateBitStream |
unsigned char | waitingForOrderedPacketWriteIndex [NUMBER_OF_ORDERED_STREAMS] |
unsigned char | waitingForSequencedPacketWriteIndex [NUMBER_OF_ORDERED_STREAMS] |
unsigned char | waitingForOrderedPacketReadIndex [NUMBER_OF_ORDERED_STREAMS] |
unsigned char | waitingForSequencedPacketReadIndex [NUMBER_OF_ORDERED_STREAMS] |
bool | deadConnection |
bool | cheater |
unsigned long | lostPacketResendDelay |
unsigned long | splitPacketId |
unsigned long | receivedPackets [RECEIVED_PACKET_LOG_LENGTH] |
unsigned long | blockWindowIncreaseUntilTime |
RakNetStatisticsStruct | statistics |
int | windowSize |
int | lossyWindowSize |
unsigned long | lastWindowIncreaseSizeTime |
DataBlockEncryptor | encryptor |
bool | freeThreadedMemoryOnNextUpdate |