Alex Bikfalvi
SimStream Documentation
CStreamClientPull Class Reference
Inheritance diagram for CStreamClientPull:
Public Member Functions | |
| CStreamClientPull (CSimHandler *sim, CInfoPull *info, CAddress address, IDelegate5< void, __uint16, __uint16, CAddress, __byte, CPacket * > *delegateSend, IDelegate2< void, CAddress, __uint32 > *delegateIgmpJoin, IDelegate1< void, CAddress > *delegateIgmpLeave, IDelegate0< CLink * > *delegateLink, __uint32 entry) | |
| 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_STREAM_FIRST = 20, UCAST_STREAM_BUFFERING = 21, UCAST_STREAM_PLAY = 22 } |
| enum | EScheduleState { SCHEDULE_IDLE = 0, SCHEDULE_BOOTSTRAP_REQUEST = 1, SCHEDULE_BOOTSTRAP_RESPONSE = 2, SCHEDULE_CONNECT_REQUEST = 3, SCHEDULE_CONNECT_RESPONSE = 4, SCHEDULE_BITMAP_REQUEST = 5, SCHEDULE_BITMAP_RESPONSE = 6, SCHEDULE_POST_BITMAP_RESPONSE = 7, SCHEDULE_SEGMENT_REQUEST = 8, SCHEDULE_SEGMENT_RESPONSE = 9, SCHEDULE_POST_SEGMENT_RESPONSE = 10 } |
| enum | ERegistrationState { NOT_REGISTERED = 0, REGISTERED = 1 } |
| typedef set< CAddress > | TNeighborList |
|
typedef map< CAddress, CStreamPullSender * > | TRequestList |
Private Member Functions | |
| void | StartMcast () |
| void | StartUcast () |
| void | StopMcast () |
| void | StopUcast () |
| void | RecvFrameMcast (CAddress address, CStreamFrame frame) |
| void | ProcessFrameMcastFirst (CStreamFrame frame) |
| void | ProcessFrameMcastBuffering (CStreamFrame frame) |
| void | ProcessFrameMcastPlay (CStreamFrame frame) |
| void | ProcessFrameMcastWait (CStreamFrame frame) |
| void | ProcessFrameUcastFirst (CStreamFrame frame) |
| void | ProcessFrameUcastBuffering (CStreamFrame frame) |
| void | ProcessFrameUcastPlay (CStreamFrame frame) |
| void | TimerPlayMcast (CTimerInfo *info) |
| void | TimerPlayUcast (CTimerInfo *info) |
| void | TimerRegister (CTimerInfo *info) |
| void | TimerSchedule (CTimerInfo *info) |
| void | ScheduleBootstrapRequest () |
| void | ScheduleConnectRequest () |
| void | ScheduleBitmapRequest () |
| void | SchedulePostBitmapResponse () |
| void | ScheduleSegmentRequest () |
| void | RecvStream (CAddress dst, CPacketStream *packet) |
| void | RecvMessage (CAddress src, CStreamMessage *message) |
| void | RecvConnection (CAddress srcAddress, __uint16 srcPort, __uint16 dstPort, CPacketConnection *packet) |
| void | RecvMessageBootResponse (CAddress src, CStreamMessageBootPullResponse *message) |
| void | RecvMessageBitmapRequest (CAddress src, CStreamMessagePullBitmapRequest *message) |
| void | RecvMessageBitmapResponse (CAddress src, CStreamMessagePullBitmapResponse *message) |
| void | RecvMessageSegmentRequest (CAddress src, CStreamMessagePullSegmentRequest *message) |
| void | RecvMessageSegmentResponse (CAddress src, CStreamMessagePullSegmentResponse *message) |
| void | ConnectionRecv (CConnectionReceiver *receiver, CPacket *packet) |
| bool | ConnectionAccept (CAddress src, CPacket *packet) |
| void | ConnectionAccepted (CConnectionSender *sender) |
| void | ConnectionReceiverOpen (CConnection *receiver, CConnection::EOpenResult result) |
| void | ConnectionReceiverClose (CConnection *receiver, CConnection::ECloseResult result) |
| void | ConnectionSenderOpen (CConnection *sender, CConnection::EOpenResult result) |
| void | ConnectionSenderClose (CConnection *sender, CConnection::ECloseResult result) |
| void | SendMessage (CAddress dst, CStreamMessage *message) |
| void | UcastRegister () |
| void | UcastDeregister () |
Private Attributes | |
| EClientState | stateClient |
| ERegistrationState | stateRegistration |
| EScheduleState | stateSchedule |
| CInfoPull * | info |
| CAddress | address |
| CChannel * | channel |
| CStreamBuffer * | bufferMcast |
| CStreamBufferSegment * | bufferUcast |
| void(CStreamClientPull::* | processFrame )(CStreamFrame frame) |
| __time | sessionTimeLastStart |
| __time | sessionTimeLastStop |
| __uint32 | sessionFrameLastStart |
| __uint32 | sessionFrameLastStop |
| __uint32 | entry |
| CConnectionLayer * | connectionLayer |
| TNeighborList | neighbors |
| TRequestList | requestBitmaps |
| TRequestList | requestSegments |
| CStreamPullSender::TSenderList | sendersConnecting |
| CStreamPullSender::TSenderList | senders |
| CStreamPullReceiver::TReceiverList | receivers |
| __uint32 | scheduleSegment |
| __uint8 | scheduleNumCopiesLo [64] |
| __uint8 | scheduleNumCopiesHi [64] |
| bool | scheduleBitmapLo [PULL_MAX_SENDERS][64] |
| bool | scheduleBitmapHi [PULL_MAX_SENDERS][64] |
| CStreamPullSender * | scheduleSenderLo [PULL_MAX_SENDERS][64] |
| CStreamPullSender * | scheduleSenderHi [PULL_MAX_SENDERS][64] |
| __uint8 | scheduleSenderIndexLo [PULL_MAX_SENDERS][64] |
| __uint8 | scheduleSenderIndexHi [PULL_MAX_SENDERS][64] |
| __time | scheduleDeadlineLo [PULL_MAX_SENDERS][64] |
| __time | scheduleDeadlineHi [PULL_MAX_SENDERS][64] |
| __bitrate | scheduleBw [PULL_MAX_SENDERS] |
| CStreamPullSender * | scheduleSenders [64] |
| __time | scheduleDeadlineDelta |
| CTimer< CStreamClientPull > * | timerPlayMcast |
| CTimer< CStreamClientPull > * | timerPlayUcast |
| CTimer< CStreamClientPull > * | timerRegister |
| CTimer< CStreamClientPull > * | timerSchedule |
|
Delegate2< CStreamClientPull, void, CAddress, CStreamFrame > * | delegateRecvFrameMcast |
|
Delegate2< CStreamClientPull, void, CConnectionReceiver *, CPacket * > * | delegateConnectionRecv |
|
Delegate2< CStreamClientPull, bool, CAddress, CPacket * > * | delegateConnectionAccept |
|
Delegate1< CStreamClientPull, void, CConnectionSender * > * | delegateConnectionAccepted |
|
Delegate2< CStreamClientPull, void, CConnection *, CConnection::EOpenResult > * | delegateConnectionReceiverOpen |
|
Delegate2< CStreamClientPull, void, CConnection *, CConnection::ECloseResult > * | delegateConnectionReceiverClose |
|
Delegate2< CStreamClientPull, void, CConnection *, CConnection::EOpenResult > * | delegateConnectionSenderOpen |
|
Delegate2< CStreamClientPull, void, CConnection *, CConnection::ECloseResult > * | delegateConnectionSenderClose |
|
IDelegate2< void, CAddress, __uint32 > * | delegateIgmpJoin |
| IDelegate1< void, CAddress > * | delegateIgmpLeave |
|
IDelegate5< void, __uint16, __uint16, CAddress, __byte, CPacket * > * | delegateSend |
| IDelegate0< CLink * > * | delegateLink |
| CStreamDecoderFrame * | decoderMcast |
| __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 26 of file StreamClientPull.h.
The documentation for this class was generated from the following files:
Last updated: February 8, 2011