34 mContext(src.mContext),
35 mVariableLevel(src.mVariableLevel),
36 mBodyLevel(src.mBodyLevel)
44 mpStack->push_back(stackElement);
56 return mpStack->size();
66 Level = mVariableLevel;
75 assert(Level < mpStack->size());
76 assert(index < mpStack->at(Level).size());
78 return mpStack->at(Level)[index];
86 os <<
"Context: variable ";
90 os <<
"Context: body ";
102 nRootsPerDiscontinuity()
106 nDiscontinuous(src.nDiscontinuous),
107 nTotalRoots(src.nTotalRoots),
108 nRootsPerDiscontinuity(src.nRootsPerDiscontinuity)
129 nRootsPerDiscontinuity.insert(nRootsPerDiscontinuity.end(),
151 mpStack(src.mpStack),
152 mContext(src.mContext),
153 mVariableLevel(src.mVariableLevel),
154 mBodyLevel(src.mBodyLevel)
162 mpStack->push_back(stackElement);
174 return mpStack->size();
185 Level = mVariableLevel;
194 assert(Level < mpStack->size());
195 assert(index < mpStack->at(Level).size());
197 return mpStack->at(Level)[index];
const CEvaluationNode * operator[](const size_t &index) const
std::vector< StackElement > Buffer
std::vector< StackElement > Buffer
std::vector< CAllocation > StackElement
CAllocation & operator+=(const CAllocation &rhs)
const CAllocation & operator[](const size_t &index) const
std::vector< size_t > nRootsPerDiscontinuity
std::vector< const CEvaluationNode * > StackElement
std::ostream & operator<<(std::ostream &os, const CMath::CVariableStack &s)
CAllocation & operator=(const CAllocation &rhs)
void push(const StackElement &stackElement)
void push(const StackElement &stackElement)