NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::MUSICManager Class Reference

Encapsulate all calls to MUSIC. More...

#include <music_manager.h>

Inheritance diagram for nest::MUSICManager:
[legend]
Collaboration diagram for nest::MUSICManager:
[legend]

Public Member Functions

void initialize (const bool) override
 Prepare manager for operation.
 
void finalize (const bool) override
 Take down manager after operation.
 
void set_status (const Dictionary &) override
 Set the status of the manager.
 
void get_status (Dictionary &) override
 Retrieve the status of the manager.
 
 MUSICManager ()
 
void init_music (int *argc, char **argv[])
 
void enter_runtime (double h_min_delay)
 Enter the runtime mode.
 
void advance_music_time ()
 Advance the time of music by 1 simulation step.
 
void music_finalize ()
 
- Public Member Functions inherited from nest::ManagerInterface
 ManagerInterface (ManagerInterface const &)=delete
 
void operator= (ManagerInterface const &)=delete
 
 ManagerInterface ()
 
virtual ~ManagerInterface ()
 
virtual void prepare ()
 
virtual void cleanup ()
 

Detailed Description

Encapsulate all calls to MUSIC.

Constructor & Destructor Documentation

◆ MUSICManager()

nest::MUSICManager::MUSICManager ( )

Member Function Documentation

◆ advance_music_time()

void nest::MUSICManager::advance_music_time ( )

Advance the time of music by 1 simulation step.

Referenced by nest::SimulationManager::update_().

Here is the caller graph for this function:

◆ enter_runtime()

void nest::MUSICManager::enter_runtime ( double  h_min_delay)

Enter the runtime mode.

This must be done before simulating. After having entered runtime mode ports cannot be published anymore.

Parameters
h_min_delayis the length of a time slice, after which communication should take place.

Referenced by nest::SimulationManager::prepare().

Here is the caller graph for this function:

◆ finalize()

void nest::MUSICManager::finalize ( const bool  adjust_number_of_threads_or_rng_only)
overridevirtual

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_onlyPass true if calling from kernel_manager::change_number_of_threads() to limit operations to those necessary for thread adjustment.
See also
initialize()

Implements nest::ManagerInterface.

◆ get_status()

void nest::MUSICManager::get_status ( Dictionary &  )
overridevirtual

Retrieve the status of the manager.

Note
This would ideally be a const function. However, some managers delay the update of internal variables up to the point where they are needed (e.g., before reporting their values to the user, or before simulate is called). An example for this pattern is the call to update_delay_extrema_() right at the beginning of ConnectionManager::get_status().
See also
set_status()

Implements nest::ManagerInterface.

◆ init_music()

void nest::MUSICManager::init_music ( int *  argc,
char **  argv[] 
)

◆ initialize()

void nest::MUSICManager::initialize ( const bool  adjust_number_of_threads_or_rng_only)
overridevirtual

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_onlyPass 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()

Implements nest::ManagerInterface.

◆ music_finalize()

void nest::MUSICManager::music_finalize ( )

◆ set_status()

void nest::MUSICManager::set_status ( const Dictionary &  )
overridevirtual

Set the status of the manager.

See also
get_status()

Implements nest::ManagerInterface.


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