INET Framework for OMNeT++/OMNEST
inet::ProtocolTagBase Class Reference

Class generated from inet/common/ProtocolTag.msg:29 by opp_msgtool. More...

#include <ProtocolTag_m.h>

Inheritance diagram for inet::ProtocolTagBase:
inet::TagBase inet::IPrintableObject inet::DispatchProtocolInd inet::DispatchProtocolReq inet::MacProtocolInd inet::MacProtocolReq inet::NetworkProtocolInd inet::NetworkProtocolReq inet::PacketProtocolTag inet::TransportProtocolInd inet::TransportProtocolReq

Public Member Functions

 ProtocolTagBase ()
 
 ProtocolTagBase (const ProtocolTagBase &other)
 
virtual ~ProtocolTagBase ()
 
ProtocolTagBaseoperator= (const ProtocolTagBase &other)
 
virtual ProtocolTagBasedup () const override
 
virtual void parsimPack (omnetpp::cCommBuffer *b) const override
 
virtual void parsimUnpack (omnetpp::cCommBuffer *b) override
 
virtual const ProtocolfindProtocol () const
 
virtual void setProtocol (const Protocol *protocol)
 
const ProtocolgetProtocol () const
 
- Public Member Functions inherited from inet::TagBase
virtual const Ptr< TagBasedupShared () const
 
virtual const Ptr< TagBasechangeRegion (b offsetDelta, b lengthDelta) const
 
virtual void parsimPack (cCommBuffer *buffer) const override
 
virtual void parsimUnpack (cCommBuffer *buffer) override
 
virtual std::ostream & printToStream (std::ostream &stream, int level, int evFlags) const override
 Prints this object to the provided output stream. More...
 
virtual std::ostream & printFieldsToStream (std::ostream &stream, int level, int evFlags) const
 
virtual std::string str () const override
 
- Public Member Functions inherited from inet::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::string printToString () const
 
virtual std::string printToString (int level, int evFlags=0) const
 
virtual std::string getInfoStringRepresentation (int evFlags=0) const
 
virtual std::string getDetailStringRepresentation (int evFlags=0) const
 
virtual std::string getDebugStringRepresentation (int evFlags=0) const
 
virtual std::string getTraceStringRepresentation (int evFlags=0) const
 
virtual std::string getCompleteStringRepresentation (int evFlags=0) const
 

Protected Member Functions

bool operator== (const ProtocolTagBase &)=delete
 

Protected Attributes

const Protocolprotocol = nullptr
 

Private Member Functions

void copy (const ProtocolTagBase &other)
 

Additional Inherited Members

- Public Types inherited from inet::IPrintableObject
enum  PrintLevel {
  PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO,
  PRINT_LEVEL_COMPLETE = INT_MIN
}
 
enum  PrintFlag { PRINT_FLAG_FORMATTED = (1 << 0), PRINT_FLAG_MULTILINE = (1 << 1) }
 

Detailed Description

Class generated from inet/common/ProtocolTag.msg:29 by opp_msgtool.

//
// This is an abstract base class that should not be directly added as a tag.
//
class ProtocolTagBase extends TagBase
{
    const Protocol *protocol @getter(findProtocol); // specifies a protocol (internal class with an artificial identifier)
}

Constructor & Destructor Documentation

◆ ProtocolTagBase() [1/2]

inet::ProtocolTagBase::ProtocolTagBase ( )

◆ ProtocolTagBase() [2/2]

inet::ProtocolTagBase::ProtocolTagBase ( const ProtocolTagBase other)

◆ ~ProtocolTagBase()

virtual inet::ProtocolTagBase::~ProtocolTagBase ( )
virtual

Member Function Documentation

◆ copy()

void inet::ProtocolTagBase::copy ( const ProtocolTagBase other)
private

◆ dup()

◆ findProtocol()

virtual const Protocol* inet::ProtocolTagBase::findProtocol ( ) const
virtual

◆ getProtocol()

const Protocol* inet::ProtocolTagBase::getProtocol ( ) const
inline
100  {
101  if (protocol == nullptr)
102  throw cRuntimeError("Protocol is not specified");
103  return protocol;
104  }

Referenced by inet::physicallayer::ErrorModelBase::computeCorruptedPacket(), inet::physicallayer::ReceiverBase::computeReceivedPacket(), inet::physicallayer::RadioMedium::createReceiverSignal(), inet::physicallayer::UnitDiskRadio::encapsulate(), inet::physicallayer::ApskRadio::encapsulate(), inet::Ipv4Encap::encapsulate(), inet::AckingMac::encapsulate(), inet::Ppp::encapsulate(), inet::ProbabilisticBroadcast::encapsulate(), inet::LMac::encapsulate(), inet::Ipv6::encapsulate(), inet::NextHopForwarding::encapsulate(), inet::Flooding::encapsulate(), inet::Ipv4::encapsulate(), inet::BMac::encapsulate(), inet::XMac::encapsulate(), inet::Ieee802154Mac::encapsulate(), inet::findNetworkProtocol(), inet::findPacketProtocol(), inet::findTransportProtocol(), inet::ieee80211::Ieee80211LlcEpd::handleMessage(), inet::Ipv6::handleMessage(), inet::xMIPv6::handleMessage(), inet::Tun::handleUpperPacket(), inet::physicallayer::ApskRadio::handleUpperPacket(), inet::EthernetEncapsulation::Socket::matches(), inet::Mpls::popLabel(), inet::IpvxTrafSink::printPacket(), inet::IpvxTrafGen::printPacket(), inet::EchoProtocol::processEchoRequest(), inet::Mpls::processMplsPacketFromL2(), inet::Mpls::pushLabel(), inet::ShortcutMac::receiveFromPeer(), inet::physicallayer::ApskRadio::sendUp(), inet::PingApp::socketDataArrived(), inet::Mpls::swapLabel(), inet::Ipv6NeighbourDiscovery::validateRaPacket(), and inet::Ipv6NeighbourDiscovery::validateRsPacket().

◆ operator=()

ProtocolTagBase& inet::ProtocolTagBase::operator= ( const ProtocolTagBase other)

◆ operator==()

bool inet::ProtocolTagBase::operator== ( const ProtocolTagBase )
protecteddelete

◆ parsimPack()

◆ parsimUnpack()

◆ setProtocol()

Member Data Documentation

◆ protocol

const Protocol* inet::ProtocolTagBase::protocol = nullptr
protected

The documentation for this class was generated from the following file:
inet::ProtocolTagBase::protocol
const Protocol * protocol
Definition: ProtocolTag_m.h:79
inet::ProtocolTagBase::ProtocolTagBase
ProtocolTagBase()