#ifndef SECTOR_SEEN #define SECTOR_SEEN #include #include "sectionToExecute.h" class sector { public : sector(std::string name = "sector default name"); virtual ~sector(); /** Set if this sector is reflected */ inline void setReflected(bool r) { reflected_ = r;}; /** Get if this sector is reflected */ inline bool getReflected() { return reflected_;}; /** Set the original sector from where this sector is reflected/duplicated */ inline void setDuplicatedFrom(sector* s) { duplicatedFrom_ = s;}; /** Get the original sector from where this sector is reflected/duplicated. Return NULL if not */ inline sector* getDuplicatedFrom() { return duplicatedFrom_;}; /** Set the repetition number */ inline void setRepetitionNumber(unsigned int n) { repetitionNumber_ = n;}; /** Get the repetition number */ inline unsigned int getRepetitionNumber() { return repetitionNumber_;}; /** Set the name */ inline void setName(std::string name) { name_ = name;}; /** Get the name */ inline std::string getName() { return name_;}; /** Return the vector of sectors inside this sector */ inline std::vector getInnerSectors() { return sectors_;}; /** Add an inner sector */ inline void addInnerSector(sector* s) { if (s) sectors_.push_back(s); }; /** Return the vector of sectionToExecute of this */ inline std::vector getSectionsToExecute() { return sectionToExecute_;}; /** Add a sectionToExecute */ inline void addSectionToExecute(sectionToExecute* s) { if (s) sectionToExecute_.push_back(s); }; private: std::vector sectors_; std::vector sectionToExecute_; std::string name_; bool reflected_; sector* duplicatedFrom_; unsigned int repetitionNumber_; }; #endif