- NetCardImpl(char *name, int id, e_surf_network_element_type_t rcType, As *rcComponent)
- : p_rcComponent(rcComponent), p_rcType(rcType), m_id(id), p_name(name) {}
- ~NetCardImpl() { xbt_free(p_name);};
-
- int getId() {return m_id;}
- int *getIdPtr() {return &m_id;}
- void setId(int id) {m_id = id;}
- char *getName() {return p_name;}
- As *getRcComponent() {return p_rcComponent;}
- e_surf_network_element_type_t getRcType() {return p_rcType;}
+ NetCardImpl(const char *name, e_surf_network_element_type_t componentType, As *as)
+ : name_(xbt_strdup(name)),
+ componentType_(componentType),
+ containingAS_(as)
+ {}
+ ~NetCardImpl() { xbt_free(name_);};
+
+ int id() override {return id_;}
+ void setId(int id) override {id_ = id;}
+ char *name() override {return name_;}
+ As *containingAS() override {return containingAS_;}
+
+ bool isAS() override {return componentType_ == SURF_NETWORK_ELEMENT_AS;}
+ bool isHost() override {return componentType_ == SURF_NETWORK_ELEMENT_HOST;}
+ bool isRouter() override {return componentType_ == SURF_NETWORK_ELEMENT_ROUTER;}
+