50 return local_archdatas_;
57 return local_archdatas_;
106 void associateArchData_(
ArchData* ad) {
108 throw SpartaException(
"associateArchData: ArchData pointer must not be nullptr. "
118 if(std::find(local_archdatas_.begin(), local_archdatas_.end(), ad)
119 != local_archdatas_.end())
124 local_archdatas_.push_back(ad);
134 void disassociateArchData_(
ArchData* ad) {
135 auto itr = std::find(local_archdatas_.begin(), local_archdatas_.end(), ad);
136 if(itr != local_archdatas_.end()){
137 local_archdatas_.erase(itr);
145 std::vector<ArchData*> local_archdatas_;
Set of macros for Sparta assertions. Caught by the framework.
Exception class for all of Sparta.
Container class for any number of ArchData pointers owned externally.
friend class ArchData
ArchData must be able to invoke associateArchData_ and disassociateArchData_ methods during construct...
ArchDataContainer(ArchDataContainer &)=delete
Copy construction disabled.
const std::vector< ArchData * > getAssociatedArchDatas() const
Const variant of getAssociatedArchDatas.
std::vector< ArchData * > getAssociatedArchDatas()
Retrieves all ArchDatas associated with this TreeNode so that children can use it to allocate their d...
virtual std::string getLocation() const =0
virtual ~ArchDataContainer()
Virtual destructor.
ArchDataContainer(ArchDataContainer &&)=default
Move constructor.
ArchDataContainer()=default
Default constructor.
Contains a set of contiguous line of architectural data which can be referred to by any architected o...
Used to construct and throw a standard C++ exception. Inherits from std::exception.
Macros for handling exponential backoff.