NEURON
neuron::container::Node::storage Struct Reference

Underlying storage for all Nodes. More...

#include <node_data.hpp>

Inheritance diagram for neuron::container::Node::storage:
neuron::container::soa< storage, field::AboveDiagonal, field::Area, field::BelowDiagonal, field::Diagonal, field::FastIMemSavD, field::FastIMemSavRHS, field::RHS, field::Voltage >

Public Member Functions

std::string_view name () const
 
- Public Member Functions inherited from neuron::container::soa< storage, field::AboveDiagonal, field::Area, field::BelowDiagonal, field::Diagonal, field::FastIMemSavD, field::FastIMemSavRHS, field::RHS, field::Voltage >
 soa ()
 Construct with default-constructed tag type instances. More...
 
 soa (Tags... tag_instances)
 Construct with specific tag instances. More...
 
 soa (soa &&)=delete
 soa is not movable More...
 
 soa (soa const &)=delete
 soa is not copiable More...
 
soaoperator= (soa &&)=delete
 soa is not move assignable More...
 
soaoperator= (soa const &)=delete
 soa is not copy assignable More...
 
std::size_t size () const
 Get the size of the container. More...
 
bool empty () const
 Test if the container is empty. More...
 
void shrink_to_fit ()
 
frozen_token_type issue_frozen_token ()
 Create a token guaranteeing the container is in "frozen" state. More...
 
void mark_as_sorted (frozen_token_type &write_token)
 Tell the container it is sorted. More...
 
void mark_as_unsorted ()
 Tell the container it is no longer sorted. More...
 
void set_unsorted_callback (std::function< void()> unsorted_callback)
 Set the callback that is invoked when the container becomes unsorted. More...
 
bool is_sorted () const
 Query if the underlying vectors are still "sorted". More...
 
frozen_token_type apply_reverse_permutation (Arg &&permutation)
 Permute the SoA-format data using an arbitrary range of integers. More...
 
void apply_reverse_permutation (Range permutation, frozen_token_type &sorted_token)
 Permute the SoA-format data using an arbitrary range of integers. More...
 
non_owning_identifier< storage > at (std::size_t offset) const
 Get a non-owning identifier to the offset-th entry. More...
 
constexpr Tag const & get_tag () const
 Get the instance of the given tag type. More...
 
Tag::typeget (std::size_t offset)
 Get the offset-th element of the column named by Tag. More...
 
Tag::type const & get (std::size_t offset) const
 Get the offset-th element of the column named by Tag. More...
 
data_handle< typename Tag::typeget_handle (non_owning_identifier_without_container id, int array_index=0) const
 Get a handle to the given element of the column named by Tag. More...
 
data_handle< typename Tag::typeget_field_instance_handle (non_owning_identifier_without_container id, int field_index, int array_index=0) const
 Get a handle to the given element of the field_index-th column named by Tag. More...
 
Tag::typeget_field_instance (std::size_t offset, int field_index, int array_index=0)
 Get the offset-th element of the field_index-th instance of the column named by Tag. More...
 
Tag::type const & get_field_instance (std::size_t offset, int field_index, int array_index=0) const
 Get the offset-th element of the field_index-th instance of the column named by Tag. More...
 
non_owning_identifier_without_container get_identifier (std::size_t offset) const
 Get the offset-th identifier. More...
 
neuron::container::generic_data_handle find_data_handle (neuron::container::generic_data_handle input_handle) const
 Return a permutation-stable handle if ptr is inside us. More...
 
bool is_storage_pointer (typename Tag::type const *ptr) const
 Query whether the given pointer-to-vector is the one associated to Tag. More...
 
std::unique_ptr< utils::storage_infofind_container_info (void const *cont) const
 Check if cont refers to a field in this container. More...
 
Tag::type *const * get_data_ptrs () const
 Get a pointer to a range of pointers that always point to the start of the contiguous storage. More...
 
int const * get_array_dims () const
 Get a pointer to an array holding the array dimensions of the fields associated with this tag. More...
 
int get_array_dims (int field_index) const
 
size_t get_num_variables () const
 
int const * get_array_dim_prefix_sums () const
 Get a pointer to an array holding the prefix sum of array dimensions for this tag. More...
 
field_index translate_legacy_index (int legacy_index) const
 
bool field_active () const
 Query whether the field associated with the given tag is active. More...
 
void set_field_status (bool enabled)
 Enable/disable the fields associated with the given tags. More...
 
StorageMemoryUsage memory_usage () const
 

Additional Inherited Members

- Public Types inherited from neuron::container::soa< storage, field::AboveDiagonal, field::Area, field::BelowDiagonal, field::Diagonal, field::FastIMemSavD, field::FastIMemSavRHS, field::RHS, field::Voltage >
using frozen_token_type = state_token< storage >
 Return type of issue_frozen_token() More...
 
- Static Public Attributes inherited from neuron::container::soa< storage, field::AboveDiagonal, field::Area, field::BelowDiagonal, field::Diagonal, field::FastIMemSavD, field::FastIMemSavRHS, field::RHS, field::Voltage >
static constexpr bool has_tag_v
 

Detailed Description

Underlying storage for all Nodes.

Definition at line 9 of file node_data.hpp.

Member Function Documentation

◆ name()

std::string_view neuron::container::Node::storage::name ( ) const
inline

Definition at line 18 of file node_data.hpp.


The documentation for this struct was generated from the following file: