48 #ifdef CHECK_MEMORY_LEAKS
50 #endif // CHECK_MEMORY_LEAKS
71 const std::string& subid,
unsigned int noLinks) :
72 Named(id), myNumLinks(noLinks), mySubID(subid),
76 Named(logic->getID()),
77 myNumLinks(logic->myNumLinks),
78 mySubID(logic->getProgramID()),
79 myOffset(logic->getOffset()),
80 myPhases(logic->myPhases.begin(), logic->myPhases.end()) {}
98 if (std::string::npos != illegal) {
99 throw ProcessError(
"When adding phase: illegal character '" +
toString(state[illegal]) +
"' in state");
102 if (index < 0 || index >= (
int)
myPhases.size()) {
130 for (PhaseDefinitionVector::const_iterator i =
myPhases.begin(); i !=
myPhases.end(); ++i) {
131 duration += (*i).duration;
139 for (
unsigned int i = 0; i <
myPhases.size() - 1;) {
152 assert(phaseIndex <
myPhases.size());
153 std::string& phaseState =
myPhases[phaseIndex].state;
154 assert(tlIndex < phaseState.size());
155 phaseState[tlIndex] = (char)linkState;
161 assert(phaseIndex <
myPhases.size());
162 myPhases[phaseIndex].duration = duration;