Files
Sourcetrail/src/lib/utility/scheduling/TaskDecoratorRepeat.cpp
T
Eberhard Graether 01864b4d0c ui: Added custom tooltipping to code and graph (issue #195)
* Tooltips show node type with access specifier, reference count and fully qualified name
* Fields and global variables include the type name
* Methods and functinos show whole signature. Gets broken into multiple lines if too long.

Included changes:

* Upgraded to C++14
* fixed clang warnings
* Pass location of .srctrlprj file to build.sh script to load on launch
* Split off QtCodeField for showing highlighted and annotated code fom QtCodeArea
* removed TokenComponentSignature
* added TaskDecoratorDelay

bug id = 195
2017-07-31 12:45:22 +02:00

43 lines
860 B
C++

#include "utility/scheduling/TaskDecoratorRepeat.h"
TaskDecoratorRepeat::TaskDecoratorRepeat(ConditionType condition, TaskState exitState)
: m_condition(condition)
, m_exitState(exitState)
{
}
void TaskDecoratorRepeat::doEnter(std::shared_ptr<Blackboard> blackboard)
{
}
Task::TaskState TaskDecoratorRepeat::doUpdate(std::shared_ptr<Blackboard> blackboard)
{
TaskState state = m_taskRunner->update(blackboard);
switch (m_condition)
{
case CONDITION_WHILE_SUCCESS:
if (state == Task::STATE_SUCCESS)
{
m_taskRunner->reset();
state = Task::STATE_RUNNING;
}
else if (state == Task::STATE_FAILURE)
{
state = m_exitState;
}
break;
}
return state;
}
void TaskDecoratorRepeat::doExit(std::shared_ptr<Blackboard> blackboard)
{
}
void TaskDecoratorRepeat::doReset(std::shared_ptr<Blackboard> blackboard)
{
m_taskRunner->reset();
}