23#ifndef MODELRANGEMANAGER_H
24#define MODELRANGEMANAGER_H
49 void finalize(
const bool )
override;
56 void add_range(
size_t model,
size_t first_node_id,
size_t last_node_id );
79 std::vector< modelrange >::const_iterator
begin()
const;
81 std::vector< modelrange >::const_iterator
end()
const;
102 return ( node_id > 0 and node_id <= last_node_id_ and node_id >=
first_node_id_ );
105inline std::vector< modelrange >::const_iterator
111inline std::vector< modelrange >::const_iterator
Dictionary class for interface to Python and C++ API.
Definition dictionary.h:213
Interface for kernel manager classes.
Definition manager_interface.h:46
Definition modelrange_manager.h:41
size_t first_node_id_
Definition modelrange_manager.h:85
~ModelRangeManager() override
Definition modelrange_manager.h:44
size_t get_model_id(size_t node_id) const
Get the ID of the model to which this node ID is assigned.
Definition modelrange_manager.cpp:81
void get_status(Dictionary &) override
Retrieve the status of the manager.
Definition modelrange_manager.h:95
ModelRangeManager()
Definition modelrange_manager.cpp:36
size_t last_node_id_
Definition modelrange_manager.h:86
void set_status(const Dictionary &) override
Set the status of the manager.
Definition modelrange_manager.h:90
void add_range(size_t model, size_t first_node_id, size_t last_node_id)
Assign a range of node IDs for the given model.
Definition modelrange_manager.cpp:57
std::vector< modelrange >::const_iterator end() const
Definition modelrange_manager.h:112
void initialize(const bool) override
Prepare manager for operation.
Definition modelrange_manager.cpp:44
bool is_in_range(size_t node_id) const
Check whether a node ID is with the range of assigned node IDs.
Definition modelrange_manager.h:100
void finalize(const bool) override
Take down manager after operation.
Definition modelrange_manager.cpp:49
std::vector< modelrange >::const_iterator begin() const
Definition modelrange_manager.h:106
const modelrange & get_contiguous_node_id_range(size_t node_id) const
Return the contiguous range of IDs of nodes assigned to the same model as the node with the given nod...
Definition modelrange_manager.cpp:120
std::vector< modelrange > modelranges_
Definition modelrange_manager.h:84
Model * get_model_of_node_id(size_t)
Return the Model for a given node ID.
Definition modelrange_manager.cpp:114
Base class for all Models.
Definition model.h:53
Definition modelrange.h:33
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33