RTCPSenderReportPacket Class Reference

#include <RTCPPacket.h>

Inheritance diagram for RTCPSenderReportPacket:

RTCPReceiverReportPacket RTCPPacket

List of all members.


Detailed Description

This class represents rtcp sender report packets. A rtcp sender report packet is very similar to an rtcp receiver report packet with the only difference that it includes exactly one sender report. To express this similarity it is a subclass of RTPReceiverReportPacket.
See also:
SenderReport

ReceptionReport


Public Member Functions

 RTCPSenderReportPacket (const char *name=NULL)
 RTCPSenderReportPacket (const RTCPSenderReportPacket &rtcpSenderReportPacket)
virtual ~RTCPSenderReportPacket ()
RTCPSenderReportPacketoperator= (const RTCPSenderReportPacket &rtcpSenderReportPacket)
virtual RTCPSenderReportPacketdup () const
virtual std::string info ()
virtual void dump (std::ostream &os) const
virtual SenderReportgetSenderReport ()
virtual void setSenderReport (SenderReport *senderReport)

Protected Attributes

SenderReport_senderReport

Constructor & Destructor Documentation

RTCPSenderReportPacket::RTCPSenderReportPacket ( const char *  name = NULL  ) 

Default constructor.

Referenced by dup().

00212                                                                : RTCPReceiverReportPacket(name) {
00213     _packetType = RTCP_PT_SR;
00214     _senderReport = new SenderReport();
00215     // a sender report is 20 bytes long
00216     addByteLength(20);
00217 };

RTCPSenderReportPacket::RTCPSenderReportPacket ( const RTCPSenderReportPacket rtcpSenderReportPacket  ) 

Copy constructor.

00220                                                                                                    : RTCPReceiverReportPacket() {
00221     setName(rtcpSenderReportPacket.getName());
00222     operator=(rtcpSenderReportPacket);
00223 };

RTCPSenderReportPacket::~RTCPSenderReportPacket (  )  [virtual]

Destructor.

00226                                                 {
00227     delete _senderReport;
00228 };


Member Function Documentation

RTCPSenderReportPacket & RTCPSenderReportPacket::operator= ( const RTCPSenderReportPacket rtcpSenderReportPacket  ) 

Assignment operator.

Referenced by RTCPSenderReportPacket().

00231                                                                                                               {
00232     RTCPReceiverReportPacket::operator=(rtcpSenderReportPacket);
00233     _senderReport = new SenderReport(*(rtcpSenderReportPacket._senderReport));
00234     return *this;
00235 };

RTCPSenderReportPacket * RTCPSenderReportPacket::dup (  )  const [virtual]

Duplicates the RTCPSenderReportPacket by calling the copy constructor.

Reimplemented from RTCPReceiverReportPacket.

00238                                                           {
00239     return new RTCPSenderReportPacket(*this);
00240 };

std::string RTCPSenderReportPacket::info (  )  [virtual]

Writes a one line info about this RTCPSenderReportPacket into the given string.

Reimplemented from RTCPReceiverReportPacket.

00243                                        {
00244     std::stringstream out;
00245     out << "RTCPSenderReportPacket.ssrc=" << _ssrc;
00246     return out.str();
00247 };

void RTCPSenderReportPacket::dump ( std::ostream &  os  )  const [virtual]

Writes a longer info about this RTCPSenderReportPacket into the given stream.

Reimplemented from RTCPReceiverReportPacket.

00250                                                       {
00251     os << "RTCPSenderReportPacket:" << endl;
00252     _senderReport->dump(os);
00253     for (int i = 0; i < _receptionReports->size(); i++) {
00254         if (_receptionReports->exist(i)) {
00255             //FIXME _receptionReports->get(i)->dump(os);
00256         };
00257     };
00258 };

SenderReport * RTCPSenderReportPacket::getSenderReport (  )  [virtual]

Returns a copy of the sender report stored in this RTCPSenderReportPacket.

See also:
SenderReport

Referenced by RTCP::processIncomingRTCPPacket().

00261                                                       {
00262     return new SenderReport(*_senderReport);
00263 };

void RTCPSenderReportPacket::setSenderReport ( SenderReport senderReport  )  [virtual]

Sets the sender report.

See also:
SenderReport

Referenced by RTCP::createPacket().

00266                                                                  {
00267     delete _senderReport;
00268     _senderReport = report;
00269 };


Member Data Documentation

The sender report stored in the packet.

See also:
SenderReport

Referenced by dump(), getSenderReport(), operator=(), RTCPSenderReportPacket(), setSenderReport(), and ~RTCPSenderReportPacket().


The documentation for this class was generated from the following files:

Generated on Fri Mar 20 18:51:20 2009 for INET Framework for OMNeT++/OMNEST by  doxygen 1.5.5