liveMedia/RTCP.cpp File Reference

#include "RTCP.hh"
#include "GroupsockHelper.hh"
#include "rtcp_from_spec.h"

Include dependency graph for RTCP.cpp:

Go to the source code of this file.

Data Structures

class  RTCPMemberDatabase
struct  RRHandlerRecord

Defines

#define ADVANCE(n)   pkt += (n); packetSize -= (n)

Functions

static double dTimeNow ()
void Schedule (double nextTime, event e)
void Reschedule (double nextTime, event e)
void SendRTCPReport (event e)
void SendBYEPacket (event e)
int TypeOfEvent (event e)
int SentPacketSize (event e)
int PacketType (packet p)
int ReceivedPacketSize (packet p)
int NewMember (packet p)
int NewSender (packet)
void AddMember (packet)
void AddSender (packet)
void RemoveMember (packet p)
void RemoveSender (packet)
double drand30 ()

Variables

static unsigned const maxRTCPPacketSize = 1450
static unsigned const preferredPacketSize = 1000
static unsigned const IP_UDP_HDR_SIZE = 28


Define Documentation

#define ADVANCE (  )     pkt += (n); packetSize -= (n)

Definition at line 315 of file RTCP.cpp.


Function Documentation

void AddMember ( packet   ) 

Definition at line 1018 of file RTCP.cpp.

Referenced by OnReceive().

01018                                         {
01019   // Do nothing; all of the real work was done when NewMember() was called
01020 }

void AddSender ( packet   ) 

Definition at line 1022 of file RTCP.cpp.

Referenced by OnReceive().

01022                                         {
01023   // we don't yet recognize senders other than ourselves #####
01024 }

double drand30 (  ) 

Definition at line 1037 of file RTCP.cpp.

References our_random().

01037                             {
01038   unsigned tmp = our_random()&0x3FFFFFFF; // a random 30-bit integer
01039   return tmp/(double)(1024*1024*1024);
01040 }

static double dTimeNow (  )  [static]

Definition at line 110 of file RTCP.cpp.

References NULL.

Referenced by RTCPInstance::onExpire1(), RTCPInstance::RTCPInstance(), and RTCPInstance::schedule().

00110                          {
00111     struct timeval timeNow;
00112     gettimeofday(&timeNow, NULL);
00113     return (double) (timeNow.tv_sec + timeNow.tv_usec/1000000.0);
00114 }

int NewMember ( packet  p  ) 

Definition at line 1007 of file RTCP.cpp.

References RTCPInstance::checkNewSSRC(), and NULL.

Referenced by OnReceive().

01007                                    {
01008   RTCPInstance* instance = (RTCPInstance*)p;
01009   if (instance == NULL) return 0;
01010 
01011   return instance->checkNewSSRC();
01012 }

int NewSender ( packet   ) 

Definition at line 1014 of file RTCP.cpp.

Referenced by OnReceive().

01014                                        {
01015   return 0; // we don't yet recognize senders other than ourselves #####
01016 }

int PacketType ( packet  p  ) 

Definition at line 993 of file RTCP.cpp.

References NULL, PACKET_UNKNOWN_TYPE, and RTCPInstance::packetType().

Referenced by OnReceive().

00993                                     {
00994   RTCPInstance* instance = (RTCPInstance*)p;
00995   if (instance == NULL) return PACKET_UNKNOWN_TYPE;
00996 
00997   return instance->packetType();
00998 }

int ReceivedPacketSize ( packet  p  ) 

Definition at line 1000 of file RTCP.cpp.

References NULL, and RTCPInstance::receivedPacketSize().

Referenced by OnReceive().

01000                                             {
01001   RTCPInstance* instance = (RTCPInstance*)p;
01002   if (instance == NULL) return 0;
01003 
01004   return instance->receivedPacketSize();
01005 }

void RemoveMember ( packet  p  ) 

Definition at line 1026 of file RTCP.cpp.

References NULL, and RTCPInstance::removeLastReceivedSSRC().

Referenced by OnReceive().

01026                                        {
01027   RTCPInstance* instance = (RTCPInstance*)p;
01028   if (instance == NULL) return;
01029 
01030   instance->removeLastReceivedSSRC();
01031 }

void RemoveSender ( packet   ) 

Definition at line 1033 of file RTCP.cpp.

Referenced by OnReceive().

01033                                            {
01034   // we don't yet recognize senders other than ourselves #####
01035 }

void Reschedule ( double  nextTime,
event  e 
)

Definition at line 958 of file RTCP.cpp.

References NULL, and RTCPInstance::reschedule().

Referenced by OnReceive().

00958                                                      {
00959   RTCPInstance* instance = (RTCPInstance*)e;
00960   if (instance == NULL) return;
00961 
00962   instance->reschedule(nextTime);
00963 }

void Schedule ( double  nextTime,
event  e 
)

Definition at line 951 of file RTCP.cpp.

References NULL, and RTCPInstance::schedule().

Referenced by OnExpire().

00951                                                    {
00952   RTCPInstance* instance = (RTCPInstance*)e;
00953   if (instance == NULL) return;
00954 
00955   instance->schedule(nextTime);
00956 }

void SendBYEPacket ( event  e  ) 

Definition at line 972 of file RTCP.cpp.

References NULL, and RTCPInstance::sendBYE().

Referenced by OnExpire().

00972                                        {
00973   RTCPInstance* instance = (RTCPInstance*)e;
00974   if (instance == NULL) return;
00975 
00976   instance->sendBYE();
00977 }

void SendRTCPReport ( event  e  ) 

Definition at line 965 of file RTCP.cpp.

References NULL, and RTCPInstance::sendReport().

Referenced by OnExpire().

00965                                         {
00966   RTCPInstance* instance = (RTCPInstance*)e;
00967   if (instance == NULL) return;
00968 
00969   instance->sendReport();
00970 }

int SentPacketSize ( event  e  ) 

Definition at line 986 of file RTCP.cpp.

References NULL, and RTCPInstance::sentPacketSize().

Referenced by OnExpire().

00986                                        {
00987   RTCPInstance* instance = (RTCPInstance*)e;
00988   if (instance == NULL) return 0;
00989 
00990   return instance->sentPacketSize();
00991 }

int TypeOfEvent ( event  e  ) 

Definition at line 979 of file RTCP.cpp.

References EVENT_UNKNOWN, NULL, and RTCPInstance::typeOfEvent().

Referenced by OnExpire(), and OnReceive().

00979                                     {
00980   RTCPInstance* instance = (RTCPInstance*)e;
00981   if (instance == NULL) return EVENT_UNKNOWN;
00982 
00983   return instance->typeOfEvent();
00984 }


Variable Documentation

unsigned const IP_UDP_HDR_SIZE = 28 [static]

Definition at line 312 of file RTCP.cpp.

Referenced by RTCPInstance::incomingReportHandler1(), and RTCPInstance::sendBuiltPacket().

unsigned const maxRTCPPacketSize = 1450 [static]

Definition at line 116 of file RTCP.cpp.

Referenced by RTCPInstance::incomingReportHandler1(), and RTCPInstance::RTCPInstance().

unsigned const preferredPacketSize = 1000 [static]

Definition at line 118 of file RTCP.cpp.

Referenced by RTCPInstance::RTCPInstance().


Generated on Mon Apr 29 13:30:35 2013 for live by  doxygen 1.5.2