Interface for kernel manager classes.
This class defines the common interface for all manager classes in the NEST kernel.
- Note
- Each manager shall be instantiated only once. Therefore, copy constructor and assignment operator are declared private and not implemented.
| virtual void nest::ManagerInterface::finalize |
( |
const bool |
adjust_number_of_threads_or_rng_only | ) |
|
|
pure virtual |
Take down manager after operation.
After this method has completed, all dynamic data structures created by the manager shall be deallocated and containers emptied. Plain variables need not be reset.
- Note
- Finalization of any given manager may depend on other managers not having been finalized yet. KernelManager::finalize() is responsible for calling the initialization routines on the specific managers in correct order, i.e., the opposite order of initialize() calls.
- Parameters
-
| adjust_number_of_threads_or_rng_only | Pass true if calling from kernel_manager::change_number_of_threads() to limit operations to those necessary for thread adjustment. |
- See also
- initialize()
Implemented in nest::ConnectionManager, nest::EventDeliveryManager, nest::IOManager, nest::LoggingManager, nest::ModelManager, nest::ModelRangeManager, nest::ModuleManager, nest::MPIManager, nest::MUSICManager, nest::NodeManager, nest::RandomManager, nest::SimulationManager, nest::SPManager, and nest::VPManager.
| virtual void nest::ManagerInterface::initialize |
( |
const bool |
adjust_number_of_threads_or_rng_only | ) |
|
|
pure virtual |
Prepare manager for operation.
After this method has completed, the manager should be completely initialized and "ready for action".
- Note
- Initialization of any given manager may depend on other managers having been initialized before. KernelManager::initialize() is responsible for calling the initialization routines on the specific managers in correct order.
- Parameters
-
| adjust_number_of_threads_or_rng_only | Pass true if calling from kernel_manager::change_number_of_threads() or RandomManager::get_status() to limit operations to those necessary for thread adjustment or switch or re-seeding of RNG. |
- See also
- finalize()
Implemented in nest::ConnectionManager, nest::EventDeliveryManager, nest::IOManager, nest::LoggingManager, nest::ModelManager, nest::ModelRangeManager, nest::ModuleManager, nest::MPIManager, nest::MUSICManager, nest::NodeManager, nest::RandomManager, nest::SimulationManager, nest::SPManager, and nest::VPManager.