美文网首页NS3(Network Simulator)
NS3 ObjectBase类API说明

NS3 ObjectBase类API说明

作者: shawn168 | 来源:发表于2017-06-25 20:32 被阅读134次

通常作为基类,派生其他类。
每个想要在ns-3类型和属性系统中集成的类都应该从这个基类派生。 这个基类提供:

将ns3 :: TypeId与每个对象实例相关联的方法。
一种设置和获取在ns3 :: TypeId中注册的属性的方法。

公共方法:

virtual     ~ObjectBase ()
static TypeId   GetTypeId (void)
void    GetAttribute (std::string name, AttributeValue &value) const
    获取属性值,如果失败,则导致致命的error。
    这将成功设置属性,否则,将导致NS_FATAL_ERROR():
            该对象中不存在该属性。
            无法读取该属性(无Getter)。
            该属性不支持字符串格式。
            该属性无法序列化到AttributeValue中。
bool    GetAttributeFailSafe (std::string name, AttributeValue &value) const
    获取属性值,如果失败,返回false。
virtual TypeId  GetInstanceTypeId (void) const =0
    获取对象的派生类的TypeId.
void    SetAttribute (std::string name, const AttributeValue &value)
    设置属性,如果失败,导致致命的错误。
这将成功设置属性,否则将导致NS_FATAL_ERROR():

            该对象中不存在该属性。
            不能设置该属性(没有Setter)。
            该属性无法从AttributeValue反序列化。
bool    SetAttributeFailSafe (std::string name, const AttributeValue &value)
    设置属性,如果失败,返回false。
bool    TraceConnect (std::string name, std::string context, const CallbackBase &cb)
    Connect a TraceSource to a Callback with a context. 
    连接一个Trace源到context情景下的回调中。
    目标跟踪源应该使用TypeId :: Add TraceSource注册。
bool    TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
    Connect a TraceSource to a Callback without a context.
    连接一个Trace源到回调中,无context。
    目标跟踪源应该使用TypeId :: Add TraceSource注册。
bool    TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
    Disconnect from a TraceSource a Callback previously connected with a context. 
    断开连接
    目标跟踪源应该使用TypeId :: Add TraceSource注册。
bool    TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
    Disconnect from a TraceSource a Callback previously connected without a context. 
    断开连接
    目标跟踪源应该使用TypeId :: Add TraceSource注册。

保护方法:

void    ConstructSelf (const AttributeConstructionList &attributes)
    Complete construction of ObjectBase; invoked by derived classes. 
    完成ObjectBase的构建; 由派生类调用。
从子类调用以初始化其所有属性成员。 如果你的类派生自ns3 :: Object,这个方法通常会从
    ns3 :: CreateObject自动调用。 如果你直接从ns3 :: ObjectBase派生,你应该确保你从你的大
    多数派生的构造函数调用这个方法。
virtual void    NotifyConstructionCompleted (void)
    Notifier called once the ObjectBase is fully constructed. 
    对象完成构造后回调该函数。
    所有成员属性初始化后,将调用此方法。 子类可以覆盖此方法以通知此事件,
    但如果它们这样做,它们必须链接到其父NotifyConstructionCompleted方法。

相关文章

  • NS3 ObjectBase类API说明

    通常作为基类,派生其他类。每个想要在ns-3类型和属性系统中集成的类都应该从这个基类派生。 这个基类提供: 公共方...

  • NS3 Socket类API说明

    源文件位置: src/netwrok/model/socket.hsocket.cc 描述: 一个基于BSD So...

  • NS3 WifiMacQueue类API说明

    介绍: 此队列实现(第9.19.2.6节“重传过程”第6段; IEEE 802.11-2012)中描述的超时过程。...

  • NS3 BulkSendApplication类API说明

    源文件位置:src/applications/model/bulk-send-application.hbulk-...

  • NS3 Config类API说明

    源文件位置:src/core/model/config.hconfig.cc 配置仿真参数和跟踪。 用法实例: 1...

  • NS3 PacketSink类API说明

    源文件位置: src/applications/model/packet-sink.hpacket-sink.cc...

  • NS3 GlobalValue类API以及使用说明

    GlobalValue类 位置: core/model/global-value.cc 功能: 可从四个地方获取值...

  • NS3 Ipv4AddressHelper类API说明

    文件位置:/src/internet/helper/ipv4-address-helper.h 一个帮助类,在脚本...

  • NS3 Timer类说明

    官方文档介绍 一个简单的Timer类。定时器用于将延迟保持在一起,延迟到期时调用的函数以及延迟到期时传递给函数的一...

  • NS3 MacRxMiddle类说明

    官方文档说明 该类处理片段的重复检测和重组。 也就是说该类的功能主要是检测节点接收到的分组是否重复,以及是否是分片...

网友评论

    本文标题:NS3 ObjectBase类API说明

    本文链接:https://www.haomeiwen.com/subject/btugnttx.html