RRtpReceiveSource Class Reference

#include <mw/rtp.h>

Link against: rtpremoved.lib

class RRtpReceiveSource

Detailed Description

A handle to a receive stream.

An object of this type represents the stream of data on a single SSRC and delivers the RTP packets and RTCP information in the order they arrive.

Note that RTP does not guarantee the order of delivery, which means that the client may want to buffer the data.

Constructor & Destructor Documentation

RRtpReceiveSource ( )

RRtpReceiveSource()[inline]

Default constructor

Member Function Documentation

Close ( )

IMPORT_C voidClose()

Closes the receive stream releases all associated resources.

This includes closing all RRtpReceivePacket objects that have not already been closed.

The receive stream object cannot be closed if an event is currently being handled, i.e. a call back into client code is currently in progress.

GetByeReason ( )

IMPORT_C TDesC8 &GetByeReason()

Gets the reason for a BYE packet.

Return Value
A descriptor contaning the BYE message. This is KNullDesC if the source has not sent a BYE packet.

GetLastApp ( TPtrC8 &, TPtrC8 &, TUint & )

IMPORT_C voidGetLastApp(TPtrC8 &aName,
TPtrC8 &aAppData,
TUint &aSubType
)

Parameters from the last APP (Application Defined) packet.

Parameters
aNameFour-bytes application name
aAppDataApplciation specific data
aSubTypeApplication defined sub-type of the APP packet

GetSDES ( const TInt, TDes8 & )

IMPORT_C TIntGetSDES(const TIntaType,
TDes8 &aValue
)

Gets the data associated with the specified RTCP SDES (Source Description) item.

Note a that the PRIV (Private Extensions) SDES item is not supported by this mechanism.

Parameters
aTypeThe value identifying the RTCP SDES item.
Return Value
A descriptor reference to the SDES item data.

GetSR ( )

IMPORT_C RRtcpSRPartGetSR()

Gets the most recent SR ((Sender Report) from this SSRC.

Return Value
A handle to the SR.

IsOpen ( )

TBool IsOpen()const [inline]

Tests whether the receive stream represented by this handle is open.

Return Value
ETrue, if the receive stream is open, false otherwise.

Packet ( )

IMPORT_C RRtpReceivePacketPacket()

Gets the packet that has just arrived, or a closed packet if there isn't one.

Ownership of the packet is transferred to the caller of this function.

Note that if this function is called twice in quick succession, then it will return a closed packet the second time.

Return Value
A received RTP packet.

PayLoadTypeL ( )

IMPORT_C TUintPayLoadTypeL()

Returns the payloadtype of the newly arrived packet. Should be called before the packet() function. If an open Packet is not present the function will leave with KErrNotFound.

PrivRegisterEventCallbackL ( TUint, TRtpCallbackFunction, TAny *, TInt )

IMPORT_C voidPrivRegisterEventCallbackL(TUintaType,
TRtpCallbackFunctionaCallback,
TAny *aPtr,
TIntaParameter
)

The event manager contains a number of callback registrations, each of which binds a function and pointer (normally an object) to a particular kind of event. Registrations can be bound to all events on a stream.

If a function is registered for a particular event, it will be called when that event occurs. One callback function can be associated with more than 1 callback registration. Callback functions take a pointer argument which was supplied as part of the registration

Parameters
aTypeEvent type
aCallbackCallback object
aPtrPointer to data that needs to be passed to the callback function
aParameterParameter to be passed to internal callback subsystem

PrivRegisterEventCallbackL ( TUint, TRtpCallbackFunction, TAny * )

IMPORT_C voidPrivRegisterEventCallbackL(TUintaType,
TRtpCallbackFunctionaCallback,
TAny *aPtr
)

The event manager contains a number of callback registrations, each of which binds a function and pointer (normally an object) to a particular kind of event. Registrations can be bound to all events on a stream.

If a function is registered for a particular event, it will be called when that event occurs. One callback function can be associated with more than 1 callback registration. Callback functions take a pointer argument which was supplied as part of the registration

Parameters
aTypeEvent type
aCallbackCallback object
aPtrPointer to data that needs to be passed to the callback function

RegisterEventCallbackL ( TRtpEventType, void(*)(T *, const TRtpEvent &), T *, TRtpOneShotness, TInt )

voidRegisterEventCallbackL(TRtpEventTypeaType,
void(*)(T *, const TRtpEvent &)aCallback,
T *aPtr,
TRtpOneShotnessaOneShot,
TIntaParameter
)[inline]

RegisterEventCallbackL ( TRtpEventType, void(*)(T *, const TRtpEvent &), T *, TRtpOneShotness )

voidRegisterEventCallbackL(TRtpEventTypeaType,
void(*)(T *, const TRtpEvent &)aCallback,
T *aPtr,
TRtpOneShotnessaOneShot = ERtpNotOneShot
)[inline]

SSRC ( )

IMPORT_C TUintSSRC()const

Gets the SSRC of the remote end

Gets the SSRC, the 32-bit numeric synchronisation source identifier.

Return Value
The SSRC of the remote endThe 32-bit SSRC identifier.
Panic Codes
RTP4 if the receive stream has not been opened. Note that this panic is raised in debug mode only; in release mode, calling this function when the packet has not been opened is likely to raise panics such as KERN-EXEC 3.

operator!= ( RRtpReceiveSource )

TBool operator!=(RRtpReceiveSourceaThat)const [inline]

Tests whether this receive stream handle represents a different receive stream to the one represented by the specified handle.

Parameters
aThatThe handle of the receive stream to be compared.
Return Value
ETrue, if the represented receive streams are different, false otherwise.

operator== ( RRtpReceiveSource )

TBool operator==(RRtpReceiveSourceaThat)const [inline]

Tests whether this receive stream handle represents the same receive stream as the one represented by the specified handle.

Parameters
aThatThe handle of the receive stream to be compared.
Return Value
ETrue, if the represented receive streams are the same, false otherwise.