27#include "neml2/base/NEML2Object.h"
28#include "neml2/base/OptionSet.h"
29#include "neml2/base/Storage.h"
30#include "neml2/tensors/TensorValue.h"
34#include "neml2/base/CrossRef.h"
35#include "neml2/base/EnumSelection.h"
36#include "neml2/tensors/tensors.h"
89 template <
typename T,
typename =
typename std::enable_if_t<std::is_base_of_v<TensorBase<T>, T>>>
103 template <
typename T,
typename =
typename std::enable_if_t<std::is_base_of_v<TensorBase<T>, T>>>
118 template <
typename T,
typename =
typename std::enable_if_t<std::is_base_of_v<TensorBase<T>, T>>>
Interface for object which can store buffers.
Definition BufferStore.h:42
virtual ~BufferStore()=default
virtual void send_buffers_to(const torch::TensorOptions &options)
Send all buffers to options.
Definition BufferStore.cxx:62
const Storage< std::string, TensorValueBase > & named_buffers() const
Definition BufferStore.h:54
BufferStore(const BufferStore &)=delete
BufferStore(OptionSet options, NEML2Object *object)
Definition BufferStore.cxx:29
const T & declare_buffer(const std::string &name, const T &rawval)
Declare a buffer.
Definition BufferStore.cxx:70
TensorValueBase & get_buffer(const std::string &name)
}@
Definition BufferStore.cxx:44
BufferStore & operator=(const BufferStore &)=delete
BufferStore & operator=(BufferStore &&)=delete
BufferStore(BufferStore &&)=delete
The wrapper (decorator) for cross-referencing unresolved values at parse time.
Definition CrossRef.h:54
The base class of all "manufacturable" objects in the NEML2 library.
Definition NEML2Object.h:38
A custom map-like data structure. The keys are strings, and the values can be nonhomogeneously typed.
Definition OptionSet.h:85
The base class to allow us to set up a polymorphic container of Tensors. The concrete definitions wil...
Definition TensorValue.h:39
Definition CrossRef.cxx:31
std::string name(ElasticConstant p)
Definition ElasticityConverter.cxx:30