/home/runner/work/HiCR/HiCR/include/hicr/core/instanceManager.hpp Source File
|
HiCR
|
instanceManager.hpp
Go to the documentation of this file.
85 [[nodiscard]] __INLINE__ std::shared_ptr<HiCR::Instance> getCurrentInstance() const { return _currentInstance; }
92 __INLINE__ std::shared_ptr<HiCR::InstanceTemplate> createInstanceTemplate(const HiCR::Topology &requestedTopology = HiCR::Topology())
102 __INLINE__ std::shared_ptr<HiCR::Instance> createInstance(const HiCR::InstanceTemplate instanceTemplate = HiCR::InstanceTemplate())
166 virtual std::shared_ptr<HiCR::Instance> createInstanceImpl(const HiCR::InstanceTemplate instanceTemplate)
168 HICR_THROW_LOGIC("This backend does not currently support the launching of new instances during runtime");
176 virtual std::shared_ptr<HiCR::Instance> addInstanceImpl(HiCR::Instance::instanceId_t instanceId)
178 HICR_THROW_LOGIC("This backend does not currently support the detection of new instances during runtime");
187 HICR_THROW_LOGIC("This backend does not currently support the termination of instances during runtime");
196 __INLINE__ void setCurrentInstance(const std::shared_ptr<HiCR::Instance> &instance) { _currentInstance = instance; }
202 __INLINE__ void addInstance(const std::shared_ptr<HiCR::Instance> &instance) { _instances.push_back(instance); }
Definition instanceManager.hpp:57
__INLINE__ std::shared_ptr< HiCR::Instance > createInstance(const HiCR::InstanceTemplate instanceTemplate=HiCR::InstanceTemplate())
Definition instanceManager.hpp:102
__INLINE__ std::shared_ptr< HiCR::Instance > getCurrentInstance() const
Definition instanceManager.hpp:85
virtual void abort(int errorCode)=0
__INLINE__ void addInstance(const std::shared_ptr< HiCR::Instance > &instance)
Definition instanceManager.hpp:202
__INLINE__ std::shared_ptr< HiCR::InstanceTemplate > createInstanceTemplate(const HiCR::Topology &requestedTopology=HiCR::Topology())
Definition instanceManager.hpp:92
__INLINE__ void terminateInstance(const std::shared_ptr< HiCR::Instance > instance)
Definition instanceManager.hpp:118
__INLINE__ void addInstance(HiCR::Instance::instanceId_t instanceId)
Definition instanceManager.hpp:132
InstanceManager()=default
__INLINE__ void setCurrentInstance(const std::shared_ptr< HiCR::Instance > &instance)
Definition instanceManager.hpp:196
virtual void terminateInstanceImpl(const std::shared_ptr< HiCR::Instance > instance)
Definition instanceManager.hpp:185
__INLINE__ instanceList_t & getInstances()
Definition instanceManager.hpp:79
virtual ~InstanceManager()=default
virtual HiCR::Instance::instanceId_t getRootInstanceId() const =0
std::vector< std::shared_ptr< HiCR::Instance > > instanceList_t
Definition instanceManager.hpp:63
virtual std::shared_ptr< HiCR::Instance > addInstanceImpl(HiCR::Instance::instanceId_t instanceId)
Definition instanceManager.hpp:176
virtual std::shared_ptr< HiCR::Instance > createInstanceImpl(const HiCR::InstanceTemplate instanceTemplate)
Definition instanceManager.hpp:166
virtual void finalize()=0
Definition instanceTemplate.hpp:44
Definition topology.hpp:41
Provides a definition for the base backend's communication manager class.
Provides a definition for the abstract compute manager class.
Provides a base definition for a HiCR Execution Unit class.
Provides a definition for the HiCR Instance class.
Provides a definition for a HiCR Local Memory Slot class.
Provides a definition for the base backend's memory manager class.
Provides a base definition for a HiCR MemorySpace class.
Provides a definition for a HiCR ProcessingUnit class.
Provides a definition for the HiCR Instance Template class.
Generated by