sipxmedialib  Version 3.3
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
CRTCPTimer Class Reference

#include <RTCPTimer.h>

Inheritance diagram for CRTCPTimer:
Inheritance graph
[legend]

Public Member Functions

 CRTCPTimer (unsigned long ulTimerPeriod)
 
virtual ~CRTCPTimer (void)
 
bool Initialize (void)
 
virtual void SetReportTimer (unsigned long ulTimerPeriod)
 
virtual unsigned long GetReportTimer (void)
 
virtual void RTCPReportingAlarm (IRTCPConnection *piRTCPConnection=NULL, IRTCPSession *piRTCPSession=NULL)
 

Protected Member Functions

bool Shutdown (void)
 

Private Attributes

unsigned long m_ulTimerPeriod
 

Detailed Description

Class Name: CRTCPTimer

Inheritance: CBaseClass - Generic Base Class

Interfaces: IRTCPTimer - RTP Header Interface

Description: The CRTCPTimer is a class that implements a renewable timer used to signal the periodic generation of RTCP Reports.

Notes:

Constructor & Destructor Documentation

CRTCPTimer ( unsigned long  ulTimerPeriod)

Method Name: CRTCPTimer() - Constructor

Inputs: unsigned long ulTimerPeriod - Amount of time to run before alarming

Outputs: None

Returns: None

Description: Performs routine CRTCPTimer object initialization.

Usage Notes: The argument passed in the constructor list shall be stored as an attribute and used establish the alarm period.

virtual ~CRTCPTimer ( void  )
virtual

Method Name: ~CRTCPTimer() - Destructor

Inputs: None

Outputs: None

Returns: None

Description: Shall deallocate and/or release all resources which were acquired over the course of runtime.

Usage Notes: This shall override the virtual destructor in the base class so that deallocation specific to the derived class will be done despite the destruction being performed in the base class as part of the release.

Member Function Documentation

bool Initialize ( void  )

Method Name: CRTCPTimer::Initialize

Inputs: None

Outputs: None

Returns: Boolean True/False

Description: Create a timer thread that shall wakeup periodically and perform some operation and go back to sleep.

Usage Notes: This shall override the virtual destructor in the base class so that deallocation specific to the derived class will be done despite the destruction being performed in the base class as part of the release.

void SetReportTimer ( unsigned long  ulTimerPeriod)
inlinevirtual

Method Name: SetReportTimer

Inputs: unsigned long ulTimerPeriod

  • Number of milliseconds to elapse before alarming

Outputs: None

Returns: None

Description: The SetReportTimer method sets a timer to expire at a specified period.

Usage Notes:

Method Name: SetReportTimer

Inputs: unsigned long ulTimerPeriod - Number of mSec between alarms

Outputs: None

Returns: None

Description: The SetReportTimer method sets a timer to expire at a specified period.

Usage Notes:

unsigned long GetReportTimer ( void  )
inlinevirtual

Method Name: GetReportTimer

Inputs: None

Outputs: None

Returns: unsigned long - Number of milliseconds to elapse before alarming

Description: The GetReportTimer method returns the value of the report timer.

Usage Notes:

Method Name: GetReportTimer

Inputs: None

Outputs: None

Returns: unsigned long - Number of milliseconds to elapse before alarming

Description: Returns the value of the report timer.

Usage Notes:

virtual void RTCPReportingAlarm ( IRTCPConnection *  piRTCPConnection = NULL,
IRTCPSession *  piRTCPSession = NULL 
)
inlinevirtual

Method Name: RTCPReportingAlarm

Inputs: IRTCPConnection *piRTCPConnection

  • Interface to associated RTCP Connection IRTCPSession *piRTCPSession
  • Interface to associated RTCP Session

Outputs: None

Returns: None

Description: The RTCPReportingAlarm() event method shall inform the recipient of the expiration of the RTCP Reporting Timer. This signals the generation of the next round of RTCP Reports.

Usage Notes: This method shall be overloaded by the superior class.

Reimplemented in CRTCPConnection.

bool Shutdown ( void  )
protected

Method Name: Shutdown

Inputs: None

Outputs: None

Returns: Boolean True/False

Description: Perform RTCPTimer shutdown operations in preparation for terminating the network interface.

Usage Notes:

Member Data Documentation

unsigned long m_ulTimerPeriod
private

Attribute Name: m_ulTimerPeriod

Type: unsigned long

Description: This member shall store the RTCP Report Period value used to set the timer.