Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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 cObject * dup () const
virtual const char * className () const
virtual std::string info ()
virtual void writeContents (std::ostream &os) const
virtual SenderReportsenderReport ()
virtual void setSenderReport (SenderReport *senderReport)

Private Attributes

SenderReport_senderReport


Constructor & Destructor Documentation

RTCPSenderReportPacket::RTCPSenderReportPacket const char *  name = NULL  ) 
 

Default constructor.

00225                                                                : RTCPReceiverReportPacket(name) {
00226     _packetType = RTCP_PT_SR;
00227     _senderReport = new SenderReport("SenderReport");
00228     // a sender report is 20 bytes long
00229     addLength(20);
00230 };

RTCPSenderReportPacket::RTCPSenderReportPacket const RTCPSenderReportPacket rtcpSenderReportPacket  ) 
 

Copy constructor.

00233                                                                                                    : RTCPReceiverReportPacket() {
00234     setName(rtcpSenderReportPacket.name());
00235     operator=(rtcpSenderReportPacket);
00236 };

RTCPSenderReportPacket::~RTCPSenderReportPacket  )  [virtual]
 

Destructor.

00239                                                 {
00240     delete _senderReport;
00241 };


Member Function Documentation

const char * RTCPSenderReportPacket::className  )  const [virtual]
 

Return the class name "RTCPSenderReportPacket".

Reimplemented from RTCPReceiverReportPacket.

00256                                                     {
00257     return "RTCPSenderReportPacket";
00258 };

cObject * RTCPSenderReportPacket::dup  )  const [virtual]
 

Duplicates the RTCPSenderReportPacket by calling the copy constructor.

Reimplemented from RTCPReceiverReportPacket.

00251                                            {
00252     return new RTCPSenderReportPacket(*this);
00253 };

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

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

Reimplemented from RTCPReceiverReportPacket.

00261                                        {
00262     std::stringstream out;
00263     out << "RTCPSenderReportPacket.ssrc=" << _ssrc;
00264     return out.str();
00265 };

RTCPSenderReportPacket & RTCPSenderReportPacket::operator= const RTCPSenderReportPacket rtcpSenderReportPacket  ) 
 

Assignment operator.

00244                                                                                                               {
00245     RTCPReceiverReportPacket::operator=(rtcpSenderReportPacket);
00246     _senderReport = new SenderReport(*(rtcpSenderReportPacket._senderReport));
00247     return *this;
00248 };

SenderReport * RTCPSenderReportPacket::senderReport  )  [virtual]
 

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

See also:
SenderReport
00279                                                    {
00280     return new SenderReport(*_senderReport);
00281 };

void RTCPSenderReportPacket::setSenderReport SenderReport senderReport  )  [virtual]
 

Sets the sender report.

See also:
SenderReport
00284                                                                  {
00285     delete _senderReport;
00286     _senderReport = report;
00287 };

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

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

Reimplemented from RTCPReceiverReportPacket.

00268                                                                {
00269     os << "RTCPSenderReportPacket:" << endl;
00270     _senderReport->writeContents(os);
00271     for (int i = 0; i < _receptionReports->items(); i++) {
00272         if (_receptionReports->exist(i)) {
00273             _receptionReports->get(i)->writeContents(os);
00274         };
00275     };
00276 };


Member Data Documentation

SenderReport* RTCPSenderReportPacket::_senderReport [private]
 

The sender report stored in the packet.

See also:
SenderReport


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 20:52:24 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.1