RTP Audio System  2.0.0
AudioServer Class Reference

Audio Server. More...

#include <audioserver.h>

Inheritance diagram for AudioServer:
RTCPAbstractServer TimedThread MultiTimerThread< Timers > Thread Synchronizable

List of all members.

Classes

struct  User

Public Member Functions

 AudioServer (QoSManagerInterface *qosManager=NULL, const cardinal maxPacketSize=1500, const bool useSCTP=false)
 ~AudioServer ()
card32 getOurSSRC () const
bool getLossScalability () const
void setLossScalability (const bool on)
cardinal getMaxPacketSize () const
cardinal setMaxPacketSize (const cardinal size)
void outOfMemoryWarning ()
void * newClient (RTCPAbstractServer::Client *client, const char *cname)
void deleteClient (RTCPAbstractServer::Client *client, const DeleteReason reason)
bool checkClient (RTCPAbstractServer::Client *client)
void appMessage (RTCPAbstractServer::Client *client, const char *name, void *data, const cardinal dataLength)
void sdesMessage (RTCPAbstractServer::Client *client, const card8 type, char *data, const cardinal length)
void receiverReport (RTCPAbstractServer::Client *client, RTCPReceptionReportBlock *report, const cardinal layer)
void userCommand (RTCPAbstractServer::Client *client, User *user, AudioClientAppPacket *app)
void managementUpdate (RTCPAbstractServer::Client *client, User *user)

Private Attributes

QoSManagerInterfaceQoSMgr
std::multimap< const cardinal,
User * > 
UserSet
Synchronizable UserSetSync
cardinal MaxPacketSize
card32 OurSSRC
bool LossScalability
bool UseSCTP

Detailed Description

Audio Server.

This class is an audio server based on RTCPAbstractServer

Author:
Thomas Dreibholz
Version:
1.0

Constructor & Destructor Documentation

AudioServer::AudioServer ( QoSManagerInterface qosManager = NULL,
const cardinal  maxPacketSize = 1500,
const bool  useSCTP = false 
)

Constructor for new AudioServer.

Parameters:
qosManagerQoS manager.
maxPacketSizeMaximum packet size.
useSCTPtrue to use SCTP instead of UDP; false otherwise.

Destructor.


Member Function Documentation

void AudioServer::appMessage ( RTCPAbstractServer::Client client,
const char *  name,
void *  data,
const cardinal  dataLength 
) [virtual]
bool AudioServer::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.

Update QoS/congestion management.

Parameters:
clientClient to do congestion for.
userUser data.
void * AudioServer::newClient ( RTCPAbstractServer::Client client,
const char *  cname 
) [virtual]
void AudioServer::outOfMemoryWarning ( ) [virtual]

outOfMemoryWarning() implementation of RTCPAbstractServer.

Reimplemented from RTCPAbstractServer.

void AudioServer::sdesMessage ( RTCPAbstractServer::Client client,
const card8  type,
char *  data,
const cardinal  length 
) [virtual]
void AudioServer::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.

Execute commands given in AudioClientAppPacket.

Parameters:
clientClient.
userUser.
appAudioClientApp message.

Member Data Documentation

std::multimap<const cardinal,User*> AudioServer::UserSet [private]
bool AudioServer::UseSCTP [private]

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