INET Framework for OMNeT++/OMNEST
|
An RTP is the center of the RTP layer of an endsystem. More...
#include <RTP.h>
Public Member Functions | |
virtual bool | handleOperationStage (LifecycleOperation *operation, int stage, IDoneCallback *doneCallback) override |
Perform one stage of a lifecycle operation. More... | |
Public Member Functions inherited from inet::ILifecycle | |
virtual | ~ILifecycle () |
Protected Member Functions | |
virtual void | initialize (int stage) override |
Initializes variables. More... | |
virtual int | numInitStages () const override |
virtual void | handleMessage (cMessage *msg) override |
Handles incoming messages. More... | |
virtual void | handleMessageFromApp (cMessage *msg) |
Handles messages received from the applicaiton. More... | |
virtual void | handleMessageFromProfile (cMessage *msg) |
Handles messages received from the profile module. More... | |
virtual void | handleMessageFromRTCP (cMessage *msg) |
Handles messages received from the rtcp module. More... | |
virtual void | handleMessagefromUDP (cMessage *msg) |
Handles messages received from the UDP layer. More... | |
virtual void | enterSession (RTPCIEnterSession *rifp) |
Creates the profile module and initializes it. More... | |
virtual void | leaveSession (RTPCILeaveSession *rifp) |
Destroys the profile module and orders the rtcp module to send an rtcp bye packet. More... | |
virtual void | createSenderModule (RTPCICreateSenderModule *rifp) |
virtual void | deleteSenderModule (RTPCIDeleteSenderModule *rifp) |
virtual void | senderModuleControl (RTPCISenderControl *rifp) |
virtual void | profileInitialized (RTPInnerPacket *rinp) |
Called when the profile module is initialized. More... | |
virtual void | senderModuleCreated (RTPInnerPacket *rinp) |
virtual void | senderModuleDeleted (RTPInnerPacket *rinp) |
virtual void | senderModuleInitialized (RTPInnerPacket *rinp) |
virtual void | senderModuleStatus (RTPInnerPacket *rinp) |
virtual void | dataOut (RTPInnerPacket *rinp) |
Sends a RTP data packet to the UDP layer and a copy of it to the rtcp module. More... | |
virtual void | rtcpInitialized (RTPInnerPacket *rinp) |
Informs the application that the session is entered. More... | |
virtual void | sessionLeft (RTPInnerPacket *rinp) |
Informs the application that this end system has left the RTP session. More... | |
virtual void | createProfile (const char *profileName) |
Creates the profile module. More... | |
virtual void | createSocket () |
Requests a server socket from the UDP layer. More... | |
virtual void | socketRet () |
Called when the socket layer returns a socket. More... | |
virtual void | connectRet () |
Called when the socket layer has connected a socket. More... | |
virtual void | readRet (cMessage *sifp) |
Called when data from the socket layer has been received. More... | |
virtual void | initializeProfile () |
Initializes the profile module. More... | |
virtual void | initializeRTCP () |
Initializes the rtcp module-. More... | |
virtual int | resolveMTU () |
Determines the maximum transmission unit that can be uses for RTP. More... | |
Protected Attributes | |
std::string | _commonName |
The CNAME of this end system. More... | |
int | _bandwidth |
The available bandwidth for this session. More... | |
IPv4Address | _destinationAddress |
The destination address. More... | |
int | _port |
The RTP port. More... | |
int | _mtu |
The maximum size of a packet. More... | |
int | _rtcpPercentage |
The percentage of the bandwidth used for rtcp. More... | |
UDPSocket | _udpSocket |
The UDP socket. More... | |
bool | _leaveSession |
True when this end system is about to leave the session. More... | |
int | appInGate |
int | profileInGate |
int | rtcpInGate |
int | udpInGate |
Static Protected Attributes | |
static simsignal_t | rcvdPkSignal = registerSignal("rcvdPk") |
An RTP is the center of the RTP layer of an endsystem.
It creates the profile module, sends and receives RTP data packets and forwards messages. It also communicates with the application.
|
protectedvirtual |
Called when the socket layer has connected a socket.
Referenced by createSocket().
|
protectedvirtual |
|
protectedvirtual |
Referenced by handleMessageFromApp().
|
protectedvirtual |
Requests a server socket from the UDP layer.
Referenced by profileInitialized().
|
protectedvirtual |
Sends a RTP data packet to the UDP layer and a copy of it to the rtcp module.
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Referenced by handleMessageFromApp().
|
protectedvirtual |
Creates the profile module and initializes it.
Referenced by handleMessageFromApp().
|
overrideprotectedvirtual |
Handles incoming messages.
|
protectedvirtual |
Handles messages received from the applicaiton.
Referenced by handleMessage().
|
protectedvirtual |
Handles messages received from the profile module.
Referenced by handleMessage().
|
protectedvirtual |
Handles messages received from the rtcp module.
Referenced by handleMessage().
|
protectedvirtual |
Handles messages received from the UDP layer.
Referenced by handleMessage().
|
overridevirtual |
Perform one stage of a lifecycle operation.
Processing may be done entirely within this method, or may be a longer process that involves nonzero simulation time or several events, and is triggered by this method call.
Return value: true = "done"; false = "not yet done, will invoke doneCallback when done"
Implements inet::ILifecycle.
|
overrideprotectedvirtual |
Initializes variables.
|
protectedvirtual |
|
protectedvirtual |
Initializes the rtcp module-.
Referenced by connectRet().
|
protectedvirtual |
Destroys the profile module and orders the rtcp module to send an rtcp bye packet.
Referenced by handleMessageFromApp().
|
inlineoverrideprotectedvirtual |
|
protectedvirtual |
Called when the profile module is initialized.
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Called when data from the socket layer has been received.
Referenced by handleMessagefromUDP().
|
protectedvirtual |
Determines the maximum transmission unit that can be uses for RTP.
This implementation assumes that we use an ethernet with 1500 bytes mtu. The returned value is 1500 bytes minus header sizes for ip and udp.
Referenced by enterSession().
|
protectedvirtual |
Informs the application that the session is entered.
Referenced by handleMessageFromRTCP().
|
protectedvirtual |
Referenced by handleMessageFromApp().
|
protectedvirtual |
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Referenced by handleMessageFromProfile().
|
protectedvirtual |
Informs the application that this end system has left the RTP session.
Referenced by handleMessageFromRTCP().
|
protectedvirtual |
|
protected |
The available bandwidth for this session.
Referenced by enterSession(), and initializeRTCP().
|
protected |
The CNAME of this end system.
Referenced by enterSession(), initialize(), and initializeRTCP().
|
protected |
The destination address.
Referenced by dataOut(), enterSession(), initializeRTCP(), readRet(), and resolveMTU().
|
protected |
True when this end system is about to leave the session.
Referenced by initialize(), leaveSession(), and readRet().
|
protected |
The maximum size of a packet.
Referenced by enterSession(), initializeProfile(), and initializeRTCP().
|
protected |
The RTP port.
Referenced by createSocket(), dataOut(), enterSession(), initializeRTCP(), profileInitialized(), and readRet().
|
protected |
The percentage of the bandwidth used for rtcp.
Referenced by initializeRTCP(), and profileInitialized().
|
protected |
The UDP socket.
Referenced by createSocket(), dataOut(), and initialize().
|
protected |
Referenced by handleMessage(), and initialize().
|
protected |
Referenced by handleMessage(), and initialize().
|
staticprotected |
Referenced by readRet().
|
protected |
Referenced by handleMessage(), and initialize().
|
protected |
Referenced by handleMessage(), and initialize().