explicit NetZone(NetZone * father, const char* name);
virtual ~NetZone();
- std::vector<Host*> hosts_;
public:
/** @brief Seal your netzone once you're done adding content, and before routing stuff through it */
NetZone* father();
std::vector<NetZone*>* children(); // Sub netzones
- std::vector<Host*>* hosts(); // my content as a vector of hosts
+ void hosts(std::vector<s4u::Host*> * whereto); // retrieve my content as a vector of hosts
/** Get the properties assigned to a host */
std::unordered_map<std::string, std::string>* properties();
kernel::routing::NetPoint* gw_src, kernel::routing::NetPoint* gw_dst,
std::vector<surf::LinkImpl*>* link_list)>
onRouteCreation;
+ static simgrid::xbt::signal<void(NetZone&)> onCreation;
+ static simgrid::xbt::signal<void(NetZone&)> onSeal;
protected:
std::vector<kernel::routing::NetPoint*>
bool sealed_ = false; // We cannot add more content when sealed
- std::vector<NetZone*>* children_; // sub-netzones
+ std::vector<NetZone*>* children_ = nullptr; // sub-netzones
};
}
}; // Namespace simgrid::s4u