21 [[nodiscard]]
double&
fpfield(std::size_t instance,
int field,
int array_index = 0);
25 [[nodiscard]]
double const&
fpfield(std::size_t instance,
int field,
int array_index = 0)
const;
35 [[nodiscard]] std::string_view
name()
const;
39 [[nodiscard]]
short type()
const;
Base class defining the public API of Mechanism handles.
Underlying storage for all instances of a particular Mechanism.
friend std::ostream & operator<<(std::ostream &os, storage const &data)
Pretty printing for mechanism data structures.
storage(short mech_type, std::string name, std::vector< Variable > floating_point_fields={})
std::string_view name() const
The name of this mechanism.
short type() const
The type of this mechanism.
double & fpfield(std::size_t instance, int field, int array_index=0)
Access floating point values.
data_handle< double > fpfield_handle(non_owning_identifier_without_container id, int field, int array_index=0)
Access floating point values.
A non-owning permutation-stable identifier for an entry in a container.
Utility for generating SOA data structures.