ROME_P5
Dependencies: mbed
Diff: TaskWait.cpp
- Revision:
- 0:29be10cb0afc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/TaskWait.cpp Fri Apr 27 08:47:34 2018 +0000 @@ -0,0 +1,47 @@ +/* + * TaskWait.cpp + * Copyright (c) 2018, ZHAW + * All rights reserved. + */ + +#include "TaskWait.h" + +using namespace std; + +/** + * Creates a task object that waits for a given duration. + */ +TaskWait::TaskWait(Controller& controller, float duration) : controller(controller) { + + this->duration = duration; + + time = 0.0f; +} + +/** + * Deletes the task object. + */ +TaskWait::~TaskWait() {} + +/** + * This method is called periodically by a task sequencer. + * @param period the period of the task sequencer, given in [s]. + * @return the status of this task, i.e. RUNNING or DONE. + */ +int TaskWait::run(float period) { + + controller.setTranslationalVelocity(0.0f); + controller.setRotationalVelocity(0.0f); + + time += period; + + if (time < duration) { + + return RUNNING; + + } else { + + return DONE; + } +} +