38 lines
1.1 KiB
C++
38 lines
1.1 KiB
C++
#include "work_process_list.h"
|
|
#include "process/update_command.h"
|
|
|
|
#include <limits>
|
|
#include <QDebug>
|
|
|
|
//unsigned WorkList::nextExecIndex() const {
|
|
// if (m_workList.size() > 0 && m_workListIndex < (m_workList.size() - 1)) {
|
|
// return m_workListIndex + 1;
|
|
// }
|
|
// return std::numeric_limits<unsigned>::max();
|
|
//}
|
|
|
|
bool WorkList::nextExec() const {
|
|
return m_workListIndex < m_workList.size();
|
|
}
|
|
|
|
bool WorkList::exec(bool last) {
|
|
if (last == false) {
|
|
// if not the last entry in the worklist
|
|
if (nextExec()) {
|
|
// and there is a next entry (a binary) to execute, start the
|
|
// binary if the specified working directory.
|
|
m_workList[m_workListIndex]->start("/opt/app/tools/atbupdate");
|
|
// update to point to next entry
|
|
m_workListIndex += 1;
|
|
return true;
|
|
}
|
|
} else {
|
|
// start the last entry in the worklist
|
|
m_workList.back()->start("/opt/app/tools/atbupdate");
|
|
m_workListIndex = std::numeric_limits<unsigned>::max();
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|