A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::BridgeChannel Class Reference

Virtual channel implementation for bridges (BridgeNetDevice). More...

#include <bridge-channel.h>

+ Inheritance diagram for ns3::BridgeChannel:
+ Collaboration diagram for ns3::BridgeChannel:

Public Member Functions

 BridgeChannel ()
virtual ~BridgeChannel ()
void AddChannel (Ptr< Channel > bridgedChannel)
virtual Ptr< NetDeviceGetDevice (uint32_t i) const
virtual uint32_t GetNDevices (void) const
- Public Member Functions inherited from ns3::Channel
 Channel ()
virtual ~Channel ()
uint32_t GetId (void) const
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::BridgeChannel.

Private Member Functions

 BridgeChannel (const BridgeChannel &)
BridgeChanneloperator= (const BridgeChannel &)

Private Attributes

std::vector< Ptr< Channel > > m_bridgedChannels

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

Virtual channel implementation for bridges (BridgeNetDevice).

Just like BridgeNetDevice aggregates multiple NetDevices, BridgeChannel aggregates multiple channels and make them appear as a single channel to upper layers.

Definition at line 36 of file bridge-channel.h.

Constructor & Destructor Documentation

ns3::BridgeChannel::BridgeChannel ( )

Definition at line 38 of file bridge-channel.cc.

References NS_LOG_FUNCTION_NOARGS.

ns3::BridgeChannel::~BridgeChannel ( )
virtual

Definition at line 44 of file bridge-channel.cc.

References m_bridgedChannels, and NS_LOG_FUNCTION_NOARGS.

ns3::BridgeChannel::BridgeChannel ( const BridgeChannel )
private

Member Function Documentation

void ns3::BridgeChannel::AddChannel ( Ptr< Channel bridgedChannel)

Definition at line 58 of file bridge-channel.cc.

References m_bridgedChannels.

Referenced by ns3::BridgeNetDevice::AddBridgePort(), and ns3::MeshPointDevice::AddInterface().

+ Here is the caller graph for this function:

Ptr< NetDevice > ns3::BridgeChannel::GetDevice ( uint32_t  i) const
virtual
Parameters
iindex of NetDevice to retrieve
Returns
one of the NetDevices connected to this channel.

This method must be implemented by subclasses.

Implements ns3::Channel.

Definition at line 77 of file bridge-channel.cc.

References m_bridgedChannels.

uint32_t ns3::BridgeChannel::GetNDevices ( void  ) const
virtual
Returns
the number of NetDevices connected to this Channel.

This method must be implemented by subclasses.

Implements ns3::Channel.

Definition at line 64 of file bridge-channel.cc.

References m_bridgedChannels.

TypeId ns3::BridgeChannel::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::BridgeChannel.

No Attributes defined for this type.
Attributes defined in parent class ns3::Channel:

No TraceSources defined for this type.

Reimplemented from ns3::Channel.

Definition at line 29 of file bridge-channel.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

BridgeChannel& ns3::BridgeChannel::operator= ( const BridgeChannel )
private

Member Data Documentation

std::vector< Ptr<Channel> > ns3::BridgeChannel::m_bridgedChannels
private

Definition at line 54 of file bridge-channel.h.

Referenced by AddChannel(), GetDevice(), GetNDevices(), and ~BridgeChannel().


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