/home/runner/work/HiCR/HiCR/include/hicr/core/instanceManager.hpp Source File
HiCR
|
instanceManager.hpp
Go to the documentation of this file.
95 [[nodiscard]] __INLINE__ std::shared_ptr<HiCR::Instance> getCurrentInstance() const { return _currentInstance; }
102 __INLINE__ std::shared_ptr<HiCR::InstanceTemplate> createInstanceTemplate(const HiCR::Topology &requestedTopology = HiCR::Topology())
112 __INLINE__ std::shared_ptr<HiCR::Instance> createInstance(const HiCR::InstanceTemplate instanceTemplate)
173 virtual std::shared_ptr<HiCR::Instance> createInstanceImpl(const HiCR::InstanceTemplate instanceTemplate)
175 HICR_THROW_LOGIC("This backend does not currently support the launching of new instances during runtime");
183 virtual std::shared_ptr<HiCR::Instance> addInstanceImpl(HiCR::Instance::instanceId_t instanceId)
185 HICR_THROW_LOGIC("The Host backend does not currently support the detection of new instances during runtime");
194 HICR_THROW_LOGIC("The Host backend does not currently support the termination of instances during runtime");
203 __INLINE__ void setCurrentInstance(const std::shared_ptr<HiCR::Instance> &instance) { _currentInstance = instance; }
209 __INLINE__ void addInstance(const std::shared_ptr<HiCR::Instance> &instance) { _instances.push_back(instance); }
Definition instanceManager.hpp:57
__INLINE__ std::shared_ptr< HiCR::Instance > getCurrentInstance() const
Definition instanceManager.hpp:95
virtual void abort(int errorCode)=0
__INLINE__ void addInstance(const std::shared_ptr< HiCR::Instance > &instance)
Definition instanceManager.hpp:209
std::function< void()> RPCFunction_t
Definition instanceManager.hpp:68
__INLINE__ std::shared_ptr< HiCR::InstanceTemplate > createInstanceTemplate(const HiCR::Topology &requestedTopology=HiCR::Topology())
Definition instanceManager.hpp:102
__INLINE__ void terminateInstance(const std::shared_ptr< HiCR::Instance > instance)
Definition instanceManager.hpp:128
__INLINE__ void addInstance(HiCR::Instance::instanceId_t instanceId)
Definition instanceManager.hpp:139
InstanceManager()=default
__INLINE__ void setCurrentInstance(const std::shared_ptr< HiCR::Instance > &instance)
Definition instanceManager.hpp:203
virtual void terminateInstanceImpl(const std::shared_ptr< HiCR::Instance > instance)
Definition instanceManager.hpp:192
__INLINE__ instanceList_t & getInstances()
Definition instanceManager.hpp:89
virtual ~InstanceManager()=default
__INLINE__ std::shared_ptr< HiCR::Instance > createInstance(const HiCR::InstanceTemplate instanceTemplate)
Definition instanceManager.hpp:112
virtual HiCR::Instance::instanceId_t getRootInstanceId() const =0
std::vector< std::shared_ptr< HiCR::Instance > > instanceList_t
Definition instanceManager.hpp:73
virtual std::shared_ptr< HiCR::Instance > addInstanceImpl(HiCR::Instance::instanceId_t instanceId)
Definition instanceManager.hpp:183
virtual std::shared_ptr< HiCR::Instance > createInstanceImpl(const HiCR::InstanceTemplate instanceTemplate)
Definition instanceManager.hpp:173
virtual void finalize()=0
Definition instanceTemplate.hpp:44
Definition topology.hpp:40
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