1 # ifndef CPPAD_CORE_PRINT_FOR_HPP
2 # define CPPAD_CORE_PRINT_FOR_HPP
136 template <
class Base>
138 const char *before,
const AD<Base>& var,
const char* after)
143 if( tape == CPPAD_NULL )
147 std::strlen(before) <= 1000 ,
148 "PrintFor: length of before is greater than 1000 characters"
151 std::strlen(after) <= 1000 ,
152 "PrintFor: length of after is greater than 1000 characters"
154 addr_t ind0, ind1, ind2, ind3, ind4;
168 ind2 = tape->
Rec_.PutTxt(before);
179 ind4 = tape->
Rec_.PutTxt(after);
182 tape->
Rec_.PutArg(ind0, ind1, ind2, ind3, ind4);
186 template <
class Base>
190 template <
class Base>
194 template <
class Base>
202 template <
class Base>
210 template <
class Base>
#define CPPAD_ASSERT_KNOWN(exp, msg)
Check that exp is true, if not print msg and terminate execution.
CPPAD_TAPE_ADDR_TYPE addr_t
void PrintFor(const AD< Base > &pos, const char *before, const AD< Base > &var, const char *after)
AD< Base > ADBase(void) const
Conversion from VecAD_reference to AD<Base>. puts the correspond vecad load instruction in the tape...
static local::ADTape< Base > * tape_ptr(void)
Pointer for the tape for this AD<Base> class and the current thread.
local::recorder< Base > Rec_
This is where the information is recorded.
#define CPPAD_ASSERT_NARG_NRES(op, n_arg, n_res)
Check that operator op has the specified number of of arguments and results.
Class used to hold a reference to an element of a VecAD object.
Class used to hold tape that records AD<Base> operations.
CPPAD_INLINE_FRIEND_TEMPLATE_FUNCTION bool Parameter(const AD< Base > &x)