You are here: Home > Projects > SimStream > Documentation

SimStream Documentation

Inheritance diagram for CStreamClientPush:
CStreamClient CStream

List of all members.

Public Member Functions

 CStreamClientPush (CSimHandler *sim, CInfoPush *info, CAddress address, IDelegate2< void, CAddress, CPacketStream * > *delegateSendStream, IDelegate2< void, CAddress, CStreamMessage * > *delegateSendMessage, IDelegate2< void, CAddress, __uint32 > *delegateIgmpJoin, IDelegate1< void, CAddress > *delegateIgmpLeave, IDelegate0< CLink * > *delegateLink, __uint32 entry, __bitrate bw)
virtual void Start (CChannel *channel)
virtual void Stop ()
virtual void Recv (CAddress srcAddress, CAddress dstAddress, __uint16 srcPort, __uint16 dstPort, CPacket *packet)
virtual __uint32 StatRecvFrames ()
virtual __uint32 StatDiscardedFrames ()
virtual __uint32 StatPlayFrames ()
virtual __uint32 * StatSuccessFrames ()
virtual __uint32 * StatFailFrames ()
virtual __time StatTimeClientStart ()
virtual __time StatTimeRecvStart ()
virtual __time StatTimePlayStart ()
virtual __time StatTimeFinish ()
virtual __time StatTimeWait ()
virtual __uint32 StatPlayFirstFrame ()
virtual __uint32 StatPlayLastFrame ()
virtual __time StatSyncDelay ()
virtual void Finalize ()

Private Types

enum  EClientState {
  STOPPED = 0, MCAST_STREAM_FIRST = 10, MCAST_STREAM_BUFFERING = 11, MCAST_STREAM_PLAY = 12,
  MCAST_STREAM_WAIT = 13, UCAST_BOOTSTRAP_REQUEST = 20, UCAST_BOOTSTRAP_RESPONSE = 21, UCAST_JOIN_REQUEST = 22,
  UCAST_STREAM_FIRST = 23, UCAST_STREAM_BUFFERING = 24, UCAST_STREAM_PLAY = 25, UCAST_STREAM_WAIT = 26,
  UCAST_STREAM_RESET = 27
}
enum  ERegistrationState { NOT_REGISTERED = 0, REGISTERED = 1 }

Private Member Functions

void StartMcast ()
void StartUcast ()
void StopMcast ()
void StopUcast ()
void RecvStream (CAddress dst, CPacketStream *packet)
void RecvMessage (CAddress src, CStreamMessage *message)
void RecvFrameMcast (CAddress src, CStreamFrame frame)
void ProcessFrameMcastFirst (CStreamFrame frame)
void ProcessFrameMcastBuffering (CStreamFrame frame)
void ProcessFrameMcastPlay (CStreamFrame frame)
void ProcessFrameMcastWait (CStreamFrame frame)
void RecvFrameUcast (CAddress src, CStreamFrame frame)
void ProcessFrameUcastFirst (CStreamFrame frame)
void ProcessFrameUcastBuffering (CStreamFrame frame)
void ProcessFrameUcastPlay (CStreamFrame frame)
void ProcessFrameUcastWait (CStreamFrame frame)
void ProcessFrameUcastReset (CStreamFrame frame)
void RecvMessageJoin (CAddress src, CStreamMessagePushJoin *message)
void RecvMessageLeave (CAddress src, CStreamMessagePushLeave *message)
void RecvMessageClose (CAddress src, CStreamMessagePushClose *message)
void RecvMessageBootResponse (CAddress src, CStreamMessageBootPushResponse *message)
void StreamBootstrap ()
void StreamJoin ()
void StreamLeave ()
void StreamRegister ()
void StreamDeregister ()
void StreamClose ()
void SendStream (CStreamFrame frame)
void RejectJoin (CAddress src, CStreamMessagePushJoin *message)
void TimerPlayMcast (CTimerInfo *info)
void TimerPlayUcast (CTimerInfo *info)
void TimerBoot (CTimerInfo *info)
void TimerRegister (CTimerInfo *info)
void TimerBuffer (CTimerInfo *info)

Private Attributes

EClientState stateClient
ERegistrationState stateRegistration
CInfoPushinfo
CAddress address
CChannelchannel
CStreamBufferbuffer
void(CStreamClientPush::* processFrame )(CStreamFrame frame)
__time sessionTimeLastStart
__time sessionTimeLastStop
__uint32 sessionFrameLastStart
__uint32 sessionFrameLastStop
__bitrate bw
__bitrate bwUsed
set< CAddressneighbors
set< CAddressreceivers
CAddress sender
__uint32 entry
CTimer< CStreamClientPush > * timerPlayMcast
CTimer< CStreamClientPush > * timerPlayUcast
CTimer< CStreamClientPush > * timerBoot
CTimer< CStreamClientPush > * timerRegister
CTimer< CStreamClientPush > * timerBuffer
__uint32 timerBufferChannel
Delegate2< CStreamClientPush,
void, CAddress, CStreamFrame > * 
delegateRecvFrameMcast
Delegate2< CStreamClientPush,
void, CAddress, CStreamFrame > * 
delegateRecvFrameUcast
IDelegate2< void, CAddress,
CPacketStream * > * 
delegateSendStream
IDelegate2< void, CAddress,
CStreamMessage * > * 
delegateSendMessage
IDelegate2< void, CAddress,
__uint32 > * 
delegateIgmpJoin
IDelegate1< void, CAddress > * delegateIgmpLeave
IDelegate0< CLink * > * delegateLink
CStreamEncoderFrameencoder
CStreamDecoderdecoder
CStreamDecoderFramedecoderMcast
CStreamDecoderFramedecoderUcast
__uint32 statRecvFrames
__uint32 statDiscardedFrames
__uint32 statPlayFrames
__uint32 statSuccessFrames [3]
__uint32 statFailFrames [3]
__uint32 statPlayFirstFrame
__uint32 statPlayLastFrame
__time statTimeClientStart
__time statTimeRecvStart
__time statTimePlayStart
__time statTimeFinish
__time statTimeWait
__time statSyncDelaySum
__uint32 statSyncDelayCount

Detailed Description

Definition at line 19 of file StreamClientPush.h.


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

Last updated: February 8, 2011