The Sparta Modeling Framework
Loading...
Searching...
No Matches
sparta::ArchDataContainer Class Referenceabstract

Container class for any number of ArchData pointers owned externally. More...

#include <ArchDataContainer.hpp>

Inheritance diagram for sparta::ArchDataContainer:

Public Member Functions

std::vector< ArchData * > getAssociatedArchDatas ()
 Retrieves all ArchDatas associated with this TreeNode so that children can use it to allocate their data.
 
const std::vector< ArchData * > getAssociatedArchDatas () const
 Const variant of getAssociatedArchDatas.
 
virtual std::string getLocation () const =0
 
 ArchDataContainer ()=default
 Default constructor.
 
 ArchDataContainer (ArchDataContainer &)=delete
 Copy construction disabled.
 
 ArchDataContainer (ArchDataContainer &&)=default
 Move constructor.
 
virtual ~ArchDataContainer ()
 Virtual destructor.
 

Friends

class ArchData
 ArchData must be able to invoke associateArchData_ and disassociateArchData_ methods during construction and destruction.
 

Detailed Description

Container class for any number of ArchData pointers owned externally.

Provides methods for adding and removing these ArchDatas

Definition at line 25 of file ArchDataContainer.hpp.

Constructor & Destructor Documentation

◆ ~ArchDataContainer()

virtual sparta::ArchDataContainer::~ArchDataContainer ( )
inlinevirtual

Virtual destructor.

Definition at line 83 of file ArchDataContainer.hpp.

Member Function Documentation

◆ getAssociatedArchDatas() [1/2]

std::vector< ArchData * > sparta::ArchDataContainer::getAssociatedArchDatas ( )
inline

Retrieves all ArchDatas associated with this TreeNode so that children can use it to allocate their data.

Parameters
targetTreeNode from which to extract the ArchData.
Returns
ArchData* owned by this node. May be null if this node does not provide an ArchData.

Invokes sparta::TreeNode::getLocalArchData_ to actually get the ArchData.

This method exists as a non-virtual protected member so that subclasses can call it but non-TreeNodes cannot. Subclasses cannot call getLocalArchData_ directly because it is virtual.

Definition at line 49 of file ArchDataContainer.hpp.

◆ getAssociatedArchDatas() [2/2]

const std::vector< ArchData * > sparta::ArchDataContainer::getAssociatedArchDatas ( ) const
inline

Const variant of getAssociatedArchDatas.

Definition at line 56 of file ArchDataContainer.hpp.

◆ getLocation()

virtual std::string sparta::ArchDataContainer::getLocation ( ) const
pure virtual

Friends And Related Symbol Documentation

◆ ArchData

friend class ArchData
friend

ArchData must be able to invoke associateArchData_ and disassociateArchData_ methods during construction and destruction.

Definition at line 33 of file ArchDataContainer.hpp.


The documentation for this class was generated from the following file: