41#include "../misc/tapeValues.hpp"
77 template<
typename T_Index>
103 template<
typename Tape>
108 template<
typename Tape>
111 template<
typename Tape>
114 template<
typename Tape>
137 template<
typename Index>
139 template<
typename Index>
#define CODI_DD(Type, Default)
Abbreviation for CODI_DECLARE_DEFAULT.
Definition macros.hpp:94
#define CODI_UNDEFINED_VALUE
Used in interface declarations for variables that have to be defined in the specializations.
Definition macros.hpp:117
CoDiPack - Code Differentiation Package.
Definition codi.hpp:90
Indices enable the mapping of primal values to their adjoint counterparts.
Definition indexManagerInterface.hpp:78
static Index constexpr InvalidIndex
Default invalid index for all index mangers (max value for unsigned types).
Definition indexManagerInterface.hpp:87
static Index constexpr InactiveIndex
Default inactive index for all index managers.
Definition indexManagerInterface.hpp:86
void reset()
Reset for a new recording.
bool assignUnusedIndex(Index &index)
Call on registering input values.
bool assignIndex(Index &index)
Call on assignment of a primal value, e.g. on w for w = a + b.
T_Index Index
See IndexManagerInterface.
Definition indexManagerInterface.hpp:81
void copyIndex(Index &lhs, Index const &rhs)
Call on copy of a primal value, e.g. w = a.
static bool constexpr NeedsStaticStorage
True if the index manager is specific to a tape type (and not a tape instance). See IndexManagerInter...
Definition indexManagerInterface.hpp:99
static bool constexpr CopyNeedsStatement
True if no copy optimization is implemented. See IndexManagerInterface.
Definition indexManagerInterface.hpp:93
static bool constexpr IsLinear
True if identifiers are coupled to the statements. See IndexManagerInterface.
Definition indexManagerInterface.hpp:95
void freeIndex(Index &index)
Call on destruction of a primal value. Usually called from the destructor.
void addToTapeValues(TapeValues &values) const
Add storage and other information to the tape values.
Index getLargestCreatedIndex() const
Returns the largest created index.
Tape information that can be printed in a pretty print format or a table format.
Definition tapeValues.hpp:73