41#include "../misc/tapeValues.hpp"
77 template<
typename T_Index>
106 template<
typename Tape>
114 template<
typename Tape>
117 template<
typename Tape>
121 template<
typename Tape>
151 template<
typename Index>
155 template<
typename Index>
#define CODI_DD(Type, Default)
Abbreviation for CODI_DECLARE_DEFAULT.
Definition macros.hpp:97
#define CODI_UNDEFINED_VALUE
Used in interface declarations for variables that have to be defined in the specializations.
Definition macros.hpp:123
CoDiPack - Code Differentiation Package.
Definition codi.hpp:97
Indices enable the mapping of primal values to their adjoint counterparts.
Definition indexManagerInterface.hpp:78
void initIndex(ActiveTypeIndexData &index)
Initialize the index data. Usually zero everything.
Index & getIndex(ActiveTypeIndexData &data)
Extract index from data stored in active type.
void updateLargestCreatedIndex(ActiveTypeIndexData const &index)
Update the largest generated index.
void freeIndex(ActiveTypeIndexData &index)
void reset()
Reset for a new recording.
static Index constexpr InactiveIndex
Definition indexManagerInterface.hpp:87
static Index constexpr InvalidIndex
Definition indexManagerInterface.hpp:88
T_Index ActiveTypeIndexData
Index data stored in the active type. Can be arbitrary.
Definition indexManagerInterface.hpp:82
T_Index Index
See IndexManagerInterface.
Definition indexManagerInterface.hpp:81
bool assignIndex(ActiveTypeIndexData &index)
Call on assignment of a primal value, e.g. on w for w = a + b.
void copyIndex(ActiveTypeIndexData &lhs, ActiveTypeIndexData const &rhs)
Call on copy of a primal value, e.g. w = a.
static bool constexpr NeedsStaticStorage
Definition indexManagerInterface.hpp:100
bool assignUnusedIndex(ActiveTypeIndexData &index)
Call on registering input values.
Index const & getIndex(ActiveTypeIndexData const &data)
Extract index from data stored in active type.
static bool constexpr CopyNeedsStatement
Definition indexManagerInterface.hpp:94
static bool constexpr IsLinear
Definition indexManagerInterface.hpp:96
void addToTapeValues(TapeValues &values) const
Add storage and other information to the tape values.
Index getLargestCreatedIndex() const
Returns the largest created index.
void validateRhsIndex(ActiveTypeIndexData const &data) const
Check if the rhs index is valid.
Tape information that can be printed in a pretty print format or a table format.
Definition tapeValues.hpp:75