Msg File src/inet/transportlayer/rtp/RtpInterfacePacket.msg
Name | Type | Description |
---|---|---|
RtpIfpType | enum |
An enumeration to distinguish the different functions of the RtpInterfacePacket. |
RtpControlMsg | message | (no description) |
RtpControlInfo | class |
base class |
RtpSessionControlInfo | class |
base class |
RtpCiEnterSession | class |
App to Rtp |
RtpCiSessionEntered | class |
Rtp to App |
RtpCiSenderControl | class |
App to Rtp |
RtpCiSenderStatus | class |
Rtp to App |
RtpCiLeaveSession | class |
App to Rtp |
RtpCiSessionLeft | class |
Rtp to App |
RtpCiCreateSenderModule | class |
App to Rtp |
RtpCiSenderModuleCreated | class |
Rtp to App |
RtpCiDeleteSenderModule | class |
App to Rtp |
RtpCiSenderModuleDeleted | class |
Rtp to App |
Source code
// // Copyright (C) 2008 OpenSim Ltd. // Copyright (C) 2001 Matthias Oppitz <[email protected]> // // SPDX-License-Identifier: LGPL-3.0-or-later // import inet.common.INETDefs; import inet.networklayer.contract.ipv4.Ipv4Address; import inet.transportlayer.rtp.RtpSenderControlMessage; import inet.transportlayer.rtp.RtpSenderStatusMessage; namespace inet::rtp; // // An enumeration to distinguish the different functions of the // RtpInterfacePacket. // enum RtpIfpType { RTP_IFP_ENTER_SESSION = 1; RTP_IFP_SESSION_ENTERED = 2; RTP_IFP_CREATE_SENDER_MODULE = 3; RTP_IFP_SENDER_MODULE_CREATED = 4; RTP_IFP_DELETE_SENDER_MODULE = 5; RTP_IFP_SENDER_MODULE_DELETED = 6; RTP_IFP_SENDER_CONTROL = 7; RTP_IFP_SENDER_STATUS = 8; RTP_IFP_LEAVE_SESSION = 9; RTP_IFP_SESSION_LEFT = 10; }; // // The next classes are used for communication between an ~RtpApplication // and an RTPLayer module. Its offers functionality for starting and stopping of an // rtp session, transmission of files and feedback about the success of the // operations. message RtpControlMsg { }; // base class class RtpControlInfo extends cObject { RtpIfpType type; }; // base class class RtpSessionControlInfo extends RtpControlInfo { uint32_t ssrc; }; // App to ~Rtp class RtpCiEnterSession extends RtpControlInfo { type = RTP_IFP_ENTER_SESSION; string commonName; string profileName; int bandwidth; Ipv4Address destinationAddress; int port; }; // ~Rtp to App class RtpCiSessionEntered extends RtpSessionControlInfo { type = RTP_IFP_SESSION_ENTERED; }; // App to ~Rtp class RtpCiSenderControl extends RtpSessionControlInfo { type = RTP_IFP_SENDER_CONTROL; // from ~RtpSenderControlMessage: RtpSenderControlMessageCommands command; float commandParameter1; float commandParameter2; } // ~Rtp to App class RtpCiSenderStatus extends RtpSessionControlInfo { type = RTP_IFP_SENDER_STATUS; // from ~RtpSenderStatusMessage: RtpSenderStatus status; uint32_t timeStamp; }; // App to ~Rtp class RtpCiLeaveSession extends RtpControlInfo { type = RTP_IFP_LEAVE_SESSION; // TODO do I need any sesson identifier? }; // ~Rtp to App class RtpCiSessionLeft extends RtpControlInfo { type = RTP_IFP_SESSION_LEFT; // TODO do I need any sesson identifier? }; // App to ~Rtp class RtpCiCreateSenderModule extends RtpSessionControlInfo { type = RTP_IFP_CREATE_SENDER_MODULE; int payloadType; string fileName; }; // ~Rtp to App class RtpCiSenderModuleCreated extends RtpSessionControlInfo { type = RTP_IFP_SENDER_MODULE_CREATED; }; // App to ~Rtp class RtpCiDeleteSenderModule extends RtpSessionControlInfo { type = RTP_IFP_DELETE_SENDER_MODULE; }; // ~Rtp to App class RtpCiSenderModuleDeleted extends RtpSessionControlInfo { type = RTP_IFP_SENDER_MODULE_DELETED; };