#include <llpacketring.h>
Collaboration diagram for LLPacketRing:
Public Member Functions | |
LLPacketRing () | |
~LLPacketRing () | |
void | free () |
void | dropPackets (U32) |
void | setDropPercentage (F32 percent_to_drop) |
void | setUseInThrottle (const BOOL use_throttle) |
void | setUseOutThrottle (const BOOL use_throttle) |
void | setInBandwidth (const F32 bps) |
void | setOutBandwidth (const F32 bps) |
S32 | receivePacket (S32 socket, char *datap) |
S32 | receiveFromRing (S32 socket, char *datap) |
BOOL | sendPacket (int h_socket, char *send_buffer, S32 buf_size, LLHost host) |
LLHost | getLastSender () |
S32 | getAndResetActualInBits () |
S32 | getAndResetActualOutBits () |
Protected Attributes | |
BOOL | mUseInThrottle |
BOOL | mUseOutThrottle |
LLThrottle | mInThrottle |
LLThrottle | mOutThrottle |
S32 | mActualBitsIn |
S32 | mActualBitsOut |
S32 | mMaxBufferLength |
S32 | mInBufferLength |
S32 | mOutBufferLength |
F32 | mDropPercentage |
U32 | mPacketsToDrop |
std::queue< LLPacketBuffer * > | mReceiveQueue |
std::queue< LLPacketBuffer * > | mSendQueue |
LLHost | mLastSender |
Definition at line 45 of file llpacketring.h.
LLPacketRing::LLPacketRing | ( | ) |
Definition at line 44 of file llpacketring.cpp.
LLPacketRing::~LLPacketRing | ( | ) |
Definition at line 86 of file llpacketring.cpp.
References mPacketsToDrop.
Referenced by drop_packet().
void LLPacketRing::free | ( | ) |
Definition at line 66 of file llpacketring.cpp.
References mReceiveQueue, and mSendQueue.
Referenced by ~LLPacketRing().
S32 LLPacketRing::getAndResetActualInBits | ( | ) | [inline] |
Definition at line 66 of file llpacketring.h.
References mActualBitsIn, and S32.
Referenced by LLWorld::updateNetStats().
S32 LLPacketRing::getAndResetActualOutBits | ( | ) | [inline] |
Definition at line 67 of file llpacketring.h.
References mActualBitsOut, and S32.
Referenced by LLWorld::updateNetStats().
LLHost LLPacketRing::getLastSender | ( | ) | [inline] |
Definition at line 92 of file llpacketring.h.
References mLastSender.
Referenced by LLMessageSystem::checkMessages(), and LLMessageSystem::dumpPacketToLog().
Definition at line 117 of file llpacketring.cpp.
References LLThrottle::checkOverflow(), f, LLPacketBuffer::getData(), LLPacketBuffer::getHost(), LLPacketBuffer::getSize(), mInBufferLength, mInThrottle, mLastSender, mReceiveQueue, NULL, S32, and LLThrottle::throttleOverflow().
Referenced by receivePacket().
Definition at line 153 of file llpacketring.cpp.
References f, FALSE, get_sender(), LLPacketBuffer::getSize(), ll_frand(), llendl, llwarns, mActualBitsIn, mDropPercentage, mInBufferLength, mLastSender, mMaxBufferLength, mPacketsToDrop, mReceiveQueue, mUseInThrottle, NULL, receive_packet(), receiveFromRing(), and S32.
Referenced by LLMessageSystem::checkMessages().
Definition at line 244 of file llpacketring.cpp.
References LLThrottle::checkOverflow(), f, LLHost::getAddress(), LLPacketBuffer::getData(), LLTimer::getElapsedTimeF32(), LLPacketBuffer::getHost(), LLHost::getPort(), LLPacketBuffer::getSize(), llendl, llinfos, llwarns, mActualBitsOut, mMaxBufferLength, mOutBufferLength, mOutThrottle, mSendQueue, mUseOutThrottle, NULL, LLTimer::reset(), S32, send_packet(), LLThrottle::throttleOverflow(), and TRUE.
Referenced by LLCircuitData::resendUnackedPackets(), and LLMessageSystem::sendMessage().
Definition at line 112 of file llpacketring.cpp.
References mOutThrottle, and LLThrottle::setRate().
S32 LLPacketRing::mActualBitsIn [protected] |
Definition at line 76 of file llpacketring.h.
Referenced by getAndResetActualInBits(), and receivePacket().
S32 LLPacketRing::mActualBitsOut [protected] |
Definition at line 77 of file llpacketring.h.
Referenced by getAndResetActualOutBits(), and sendPacket().
F32 LLPacketRing::mDropPercentage [protected] |
Definition at line 82 of file llpacketring.h.
Referenced by receivePacket(), and setDropPercentage().
S32 LLPacketRing::mInBufferLength [protected] |
LLThrottle LLPacketRing::mInThrottle [protected] |
Definition at line 73 of file llpacketring.h.
Referenced by receiveFromRing(), and setInBandwidth().
LLHost LLPacketRing::mLastSender [protected] |
Definition at line 88 of file llpacketring.h.
Referenced by getLastSender(), receiveFromRing(), and receivePacket().
S32 LLPacketRing::mMaxBufferLength [protected] |
S32 LLPacketRing::mOutBufferLength [protected] |
LLThrottle LLPacketRing::mOutThrottle [protected] |
U32 LLPacketRing::mPacketsToDrop [protected] |
std::queue<LLPacketBuffer *> LLPacketRing::mReceiveQueue [protected] |
Definition at line 85 of file llpacketring.h.
Referenced by free(), receiveFromRing(), and receivePacket().
std::queue<LLPacketBuffer *> LLPacketRing::mSendQueue [protected] |
BOOL LLPacketRing::mUseInThrottle [protected] |
Definition at line 69 of file llpacketring.h.
Referenced by receivePacket(), and setUseInThrottle().
BOOL LLPacketRing::mUseOutThrottle [protected] |