Sirikata
Public Member Functions | Private Types | Private Member Functions | Private Attributes
Sirikata::FairServerMessageReceiver Class Reference

FairServerMessageReceiver implements the ServerMessageReceiver interface using a FairQueue (without internal storage, using the SpaceNetwork layer as the queue storage) to fairly distribute receive bandwidth based on the specified weights. More...

#include <FairServerMessageReceiver.hpp>

Inheritance diagram for Sirikata::FairServerMessageReceiver:
Collaboration diagram for Sirikata::FairServerMessageReceiver:

List of all members.

Public Member Functions

 FairServerMessageReceiver (SpaceContext *ctx, SpaceNetwork *net, Listener *listener)
virtual ~FairServerMessageReceiver ()

Private Types

typedef std::set< ServerID > ReceiveServerSet

Private Member Functions

virtual void handleUpdateSenderStats (ServerID sid, double total_weight, double used_weight)
virtual void networkReceivedConnection (SpaceNetwork::ReceiveStream *strm)
 Invoked when a new connection is received from a remote host.
virtual void networkReceivedData (SpaceNetwork::ReceiveStream *strm)
 Invoked by the Network when data has been received on a queue that was previously empty, i.e.
void service ()

Private Attributes

Network::IOTimerPtr mServiceTimer
FairQueue< Message, ServerID,
NetworkQueueWrapper
mReceiveQueues
ReceiveServerSet mReceiveSet
bool mServicing
uint32 mStoppedUnderflow
uint32 mStoppedMaxMessages
uint32 mBytesUsed
boost::mutex mMutex

Detailed Description

FairServerMessageReceiver implements the ServerMessageReceiver interface using a FairQueue (without internal storage, using the SpaceNetwork layer as the queue storage) to fairly distribute receive bandwidth based on the specified weights.


Member Typedef Documentation

typedef std::set<ServerID> Sirikata::FairServerMessageReceiver::ReceiveServerSet [private]

Constructor & Destructor Documentation

Sirikata::FairServerMessageReceiver::FairServerMessageReceiver ( SpaceContext ctx,
SpaceNetwork net,
Listener listener 
)
Sirikata::FairServerMessageReceiver::~FairServerMessageReceiver ( ) [virtual]

Member Function Documentation

void Sirikata::FairServerMessageReceiver::handleUpdateSenderStats ( ServerID  sid,
double  total_weight,
double  used_weight 
) [private, virtual]
void Sirikata::FairServerMessageReceiver::networkReceivedConnection ( SpaceNetwork::ReceiveStream strm) [private, virtual]
void Sirikata::FairServerMessageReceiver::networkReceivedData ( SpaceNetwork::ReceiveStream strm) [private, virtual]
void Sirikata::FairServerMessageReceiver::service ( ) [private]

Member Data Documentation

Referenced by service().

Referenced by networkReceivedData(), and service().


The documentation for this class was generated from the following files: