RRtpReceiveSource Class Reference

class RRtpReceiveSource

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.

Public Member Functions
RRtpReceiveSource ()
IMPORT_C void Close ()
IMPORT_C TDesC8 & GetByeReason ()
IMPORT_C void GetLastApp ( TPtrC8 &, TPtrC8 &, TUint &)
IMPORT_C TInt GetSDES (const TInt , TDes8 &)
IMPORT_C RRtcpSRPart GetSR ()
TBool IsOpen ()
IMPORT_C RRtpReceivePacket Packet ()
IMPORT_C TUint PayLoadTypeL ()
IMPORT_C void PrivRegisterEventCallbackL ( TUint , TRtpCallbackFunction , TAny *, TInt )
IMPORT_C void PrivRegisterEventCallbackL ( TUint , TRtpCallbackFunction , TAny *)
void RegisterEventCallbackL ( TRtpEventType , void(*)(T *, const TRtpEvent &), T *, TRtpOneShotness , TInt )
void RegisterEventCallbackL ( TRtpEventType , void(*)(T *, const TRtpEvent &), T *, TRtpOneShotness )
IMPORT_C TUint SSRC ()
TBool operator!= ( RRtpReceiveSource )
TBool operator== ( RRtpReceiveSource )
Private Attributes
CRtpReceiveSource * iPtr

Constructor & Destructor Documentation

RRtpReceiveSource()

RRtpReceiveSource ( ) [inline]

Default constructor

Member Functions Documentation

Close()

IMPORT_C void Close ( )

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.

GetLastApp(TPtrC8 &, TPtrC8 &, TUint &)

IMPORT_C void GetLastApp ( TPtrC8 & aName,
TPtrC8 & aAppData,
TUint & aSubType
)

Parameters from the last APP (Application Defined) packet.

Parameters

TPtrC8 & aName Four-bytes application name
TPtrC8 & aAppData Applciation specific data
TUint & aSubType Application defined sub-type of the APP packet

GetSDES(const TInt, TDes8 &)

IMPORT_C TInt GetSDES ( const TInt aType,
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

const TInt aType The value identifying the RTCP SDES item.
TDes8 & aValue

GetSR()

IMPORT_C RRtcpSRPart GetSR ( )

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

IsOpen()

TBool IsOpen ( ) const [inline]

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

Packet()

IMPORT_C RRtpReceivePacket Packet ( )

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.

PayLoadTypeL()

IMPORT_C TUint PayLoadTypeL ( )

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 void PrivRegisterEventCallbackL ( TUint aType,
TRtpCallbackFunction aCallback,
TAny * aPtr,
TInt aParameter
)

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

TUint aType Event type
TRtpCallbackFunction aCallback Callback object
TAny * aPtr Pointer to data that needs to be passed to the callback function
TInt aParameter Parameter to be passed to internal callback subsystem

PrivRegisterEventCallbackL(TUint, TRtpCallbackFunction, TAny *)

IMPORT_C void PrivRegisterEventCallbackL ( TUint aType,
TRtpCallbackFunction aCallback,
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

TUint aType Event type
TRtpCallbackFunction aCallback Callback object
TAny * aPtr Pointer to data that needs to be passed to the callback function

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

void RegisterEventCallbackL ( TRtpEventType aType,
void(*)(T *, const TRtpEvent &) aCallback,
T * aPtr,
TRtpOneShotness aOneShot,
TInt aParameter
) [inline]

Parameters

TRtpEventType aType
void(*)(T *, const TRtpEvent &) aCallback
T * aPtr
TRtpOneShotness aOneShot
TInt aParameter

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

void RegisterEventCallbackL ( TRtpEventType aType,
void(*)(T *, const TRtpEvent &) aCallback,
T * aPtr,
TRtpOneShotness aOneShot = ERtpNotOneShot
) [inline]

Parameters

TRtpEventType aType
void(*)(T *, const TRtpEvent &) aCallback
T * aPtr
TRtpOneShotness aOneShot = ERtpNotOneShot

SSRC()

IMPORT_C TUint SSRC ( ) const

Gets the SSRC of the remote end

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

panic
RTP 4 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!= ( RRtpReceiveSource aThat ) const [inline]

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

Parameters

RRtpReceiveSource aThat The handle of the receive stream to be compared.

operator==(RRtpReceiveSource)

TBool operator== ( RRtpReceiveSource aThat ) const [inline]

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

Parameters

RRtpReceiveSource aThat The handle of the receive stream to be compared.

Member Data Documentation

CRtpReceiveSource * iPtr

CRtpReceiveSource * iPtr [private]