RTP Trace System  1.0
Coral::TraceServer Class Reference

Trace Server. More...

#include <traceserver.h>

Inheritance diagram for Coral::TraceServer:
Coral::RTCPAbstractServer Coral::TimedThread Coral::Thread Coral::Synchronizable

List of all members.

Classes

struct  User

Public Member Functions

 TraceServer (BandwidthManager *bwManager, const cardinal maxPacketSize=1500)
 ~TraceServer ()
card32 getOurSSRC () const
bool getLossScalability () const
void setLossScalability (const bool on)
cardinal getMaxPacketSize () const
cardinal setMaxPacketSize (const cardinal size)
void outOfMemoryWarning ()
void * newClient (Client *client, const char *cname)
void deleteClient (Client *client, const DeleteReason reason)
bool checkClient (const Client *client)
void appMessage (const Client *client, const char *name, const void *data, const cardinal dataLength)
void sdesMessage (const Client *client, const card8 type, const char *data, const cardinal length)
void receiverReport (const Client *client, const RTCPReceptionReportBlock *report, const cardinal layer)
void userCommand (const Client *client, User *user, const TraceClientAppPacket *app)
void managementUpdate (const Client *client, User *user)

Private Attributes

BandwidthManagerBandwidthMgr
multimap< const cardinal, User * > UserSet
Synchronizable UserSetSync
cardinal MaxPacketSize
card32 OurSSRC
bool LossScalability

Detailed Description

Trace Server.

This class is an trace server based on RTCPAbstractServer

Author:
Thomas Dreibholz
Version:
1.0

Constructor & Destructor Documentation

Coral::TraceServer::TraceServer ( BandwidthManager bwManager,
const cardinal  maxPacketSize = 1500 
)

Constructor for new TraceServer.

Parameters:
bwManagerBandwidthManager object.
maxPacketSizeMaximum packet size.

Member Function Documentation

void Coral::TraceServer::appMessage ( const Client client,
const char *  name,
const void *  data,
const cardinal  dataLength 
) [virtual]
void Coral::TraceServer::deleteClient ( Client client,
const DeleteReason  reason 
) [virtual]
bool Coral::TraceServer::getLossScalability ( ) const [inline]

Get loss scalibility setting.

Returns:
true, if loss scalability is on; false otherwise.

Get maximum packet size.

Returns:
Maximum packet size.

Get client SSRC.

Returns:
Client SSRC.
void Coral::TraceServer::managementUpdate ( const Client client,
User user 
)

Update QoS/congestion management.

Parameters:
clientClient to do congestion for.
userUser data.
void * Coral::TraceServer::newClient ( Client client,
const char *  cname 
) [virtual]
void Coral::TraceServer::receiverReport ( const Client client,
const RTCPReceptionReportBlock report,
const cardinal  layer 
) [virtual]
void Coral::TraceServer::sdesMessage ( const Client client,
const card8  type,
const char *  data,
const cardinal  length 
) [virtual]
void Coral::TraceServer::setLossScalability ( const bool  on) [inline]

Set loss scalibility setting.

Parameters:
ontrue, if to set loss scalability on; false otherwise.

Set maximum packet size.

Parameters:
sizeMaximum packet size.
Returns:
Maximum packet size set.
void Coral::TraceServer::userCommand ( const Client client,
User user,
const TraceClientAppPacket app 
)

Execute commands given in TraceClientAppPacket.

Parameters:
clientClient.
userUser.
appTraceClientApp message.

Member Data Documentation

multimap<const cardinal,User*> Coral::TraceServer::UserSet [private]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines