Welcome to keywords-extension’s documentation!

class IOManager : public ManagerInterface

Public Functions

IOManager()
~IOManager() override
void initialize() override
void finalize() override
void change_number_of_threads() override
void set_status(const DictionaryDatum&) override
void get_status(DictionaryDatum&) override
void set_recording_backend_status(std::string, const DictionaryDatum&)
DictionaryDatum get_recording_backend_status(std::string)
inline const std::string &get_data_prefix() const

The prefix for files written by devices. The prefix must not contain any part of a path.

See also

get_data_dir(), overwrite_files()

inline const std::string &get_data_path() const

The path for files written by devices. It may be the empty string (use current directory).

inline bool overwrite_files() const

Indicate if existing data files should be overwritten.

Returns:

true if existing data files should be overwritten by devices. Default: false.

void post_run_hook()

Clean up in all registered recording backends after a single call to run by calling the backends’ post_run_hook() functions

void pre_run_hook()
void post_step_hook()

Clean up in all registered recording backends after a single simulation step by calling the backends’ post_step_hook() functions

void cleanup() override

Finalize all registered recording backends after a call to SimulationManager::simulate() or SimulationManager::cleanup() by calling the backends’ finalize() functions

void prepare() override
template<class RecordingBackendT>
void register_recording_backend(Name)
template<class StimulationBackendT>
void register_stimulation_backend(const Name)
bool is_valid_recording_backend(const Name) const
bool is_valid_stimulation_backend(const Name) const
void write(const Name backend_name, const RecordingDevice &device, const Event &event, const std::vector<double> &double_values, const std::vector<long> &long_values)

Send device data to a given recording backend.

This function is called from a RecordingDevice device when it wants to write data to a given recording backend, identified by its backend_name. The function takes an Event event from which some fundamental data is taken and additionally vectors of double_values and long_values that have to be written. The data vectors may be empty, if no additional data has to be written.

Parameters:
  • backend_name – the name of the RecordingBackend to write to

  • device – a reference to the RecordingDevice that wants to write

  • event – the Event to be written

  • double_values – a vector of doubles to be written

  • long_values – a vector of longs to be written

void enroll_recorder(const Name, const RecordingDevice&, const DictionaryDatum&)
void enroll_stimulator(const Name, StimulationDevice&, const DictionaryDatum&)
void set_recording_value_names(const Name backend_name, const RecordingDevice &device, const std::vector<Name> &double_value_names, const std::vector<Name> &long_value_names)
void check_recording_backend_device_status(const Name, const DictionaryDatum&)
void get_recording_backend_device_defaults(const Name, DictionaryDatum&)
void get_recording_backend_device_status(const Name, const RecordingDevice&, DictionaryDatum&)

Private Functions

void set_data_path_prefix_(const DictionaryDatum&)

Private Members

std::string data_path_

Path for all files written by devices.

std::string data_prefix_

Prefix for all files written by devices.

bool overwrite_files_

If true, overwrite existing data files.

std::map<Name, RecordingBackend*> recording_backends_

A mapping from names to registered recording backends.

std::map<Name, StimulationBackend*> stimulation_backends_

A mapping from names to registered stimulation backends

namespace nest
file io_manager.cpp
#include “io_manager.h
#include “config.h”
#include <dirent.h>
#include <errno.h>
#include <sys/types.h>
#include <cstdlib>
#include “compose.hpp”
#include “logging.h”
#include “io_manager_impl.h
#include “kernel_manager.h”
#include “recording_backend_ascii.h”
#include “recording_backend_memory.h”
#include “recording_backend_screen.h”
#include “dictutils.h”
#include <string>
file io_manager.h
#include <string>
#include “manager_interface.h”
#include “recording_backend.h”
#include “stimulation_backend.h”
file io_manager_impl.h
#include “io_manager.h
dir source/nestkernel
dir source

Indices and tables