#include <CalibrationControllerImpl.h>
Inheritance diagram for SctCalibrationController::CalibrationControllerImpl:
Public Member Functions | |
virtual ScanLibrary & | getScanLibrary () const |
virtual TestLibrary & | getTestLibrary () const |
virtual SequenceLibrary & | getSequenceLibrary () const |
virtual void | doScan (Sct_SctApi_T_Scan *s) |
virtual void | doTest (boost::shared_ptr< TestRequest > t) |
virtual void | doSequence (boost::shared_ptr< SequenceRequest > r) |
virtual void | abort () |
virtual Sct_SctApi_T_Scan * | getScan (unsigned long runNumber, unsigned long scanNumber) const |
virtual void | setUpdateOption (Sct_CalibrationController_T_CalibrationController_UpdateOption) |
void | setApi (Sct_SctApi_T_SctApi &api) |
void | takeControl (unsigned int runNumber) |
void | giveupControl () |
void | reset () |
void | executeSequence (SequenceRequest &sr) |
auto_ptr< Test > | executeTest (TestRequest &tr) |
void | executeScan (Sct_SctApi_T_Scan *s, unsigned int index) |
Sct_SctApi_T_SctApi * | getApi () const |
unsigned int | getRunNumber () const |
unsigned int | getNextScanNumber () const |
void | applyChanges (const unsigned long runNumber, const unsigned long scanNumber, const std::list< std::string > &list) |
Static Public Member Functions | |
CalibrationControllerImpl & | initialize (RunControl &rc) |
CalibrationControllerImpl & | instance () |
Private Member Functions | |
CalibrationControllerImpl (RunControl &rc) | |
virtual | ~CalibrationControllerImpl () |
void | updateStatus () |
bool | isInControl () |
bool | isBusy () |
void | setBusy (bool busy) |
void | sctApiError (SctApiException &e) |
void | setNextScanNumber (unsigned int scanNumber) |
Static Private Member Functions | |
std::list< string > | getAllModulesForScan (Sct_SctApi_T_Scan *scan) |
Utility function: get all modules in all modulegroups for a particular scan. | |
Private Attributes | |
Sct_SctApi_T_SctApi * | api |
CalibrationControllerStatus | status |
RunControl & | rc |
unsigned int | runNumber |
unsigned int | nextScanNumber |
bool | abortNow |
boost::thread_group | m_sequence_request_thread_group |
Static Private Attributes | |
CalibrationControllerImpl * | inst |
Friends | |
class | SequenceRequestWorker |
A singleton, it controls the synchronisation of the various tasks required during testing and calibration.
There is an abort method which allows the premature termination of a sequence or test after the end of the current scan.
Maintains a reference to a SctApi, to which it forwards requests for scans. Requests for sequencees, tests and scans can be made only when in control.
Publishes it's status in IS as CalibrationControllerStatus.
Definition at line 35 of file CalibrationControllerImpl.h.
|
Definition at line 37 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::currentScanIndex, publish(), status, and updateStatus(). Referenced by initialize(). |
|
Definition at line 44 of file CalibrationControllerImpl.cpp. |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 130 of file CalibrationControllerImpl.cpp. References abortNow, CalibrationControllerStatus::BUSY, CalibrationControllerStatus::status, and status. |
|
Definition at line 232 of file CalibrationControllerImpl.cpp. References Sct::IS::IONameIS::getModuleName(), Sct::File::read(), status, and CalibrationControllerStatus::updateOption. Referenced by executeSequence(). |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 463 of file CalibrationControllerImpl.cpp. References doTest(). |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 473 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::BUSY, isBusy(), isInControl(), m_sequence_request_thread_group, SequenceRequestWorker, CalibrationControllerStatus::status, status, and updateStatus(). Referenced by doTest(). |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 468 of file CalibrationControllerImpl.cpp. References doSequence(). Referenced by doScan(). |
|
Definition at line 413 of file CalibrationControllerImpl.cpp. References api, CalibrationControllerStatus::currentScanIndex, nextScanNumber, status, and updateStatus(). Referenced by executeTest(). |
|
Definition at line 137 of file CalibrationControllerImpl.cpp. References api, applyChanges(), TestData::COMPLETED, CalibrationControllerStatus::currentSequence, executeTest(), getAllModulesForScan(), getNextScanNumber(), getRunNumber(), runNumber, sctApiError(), status, and updateStatus(). Referenced by SctCalibrationController::SequenceRequestWorker::operator()(). |
|
Definition at line 330 of file CalibrationControllerImpl.cpp. References abortNow, api, CalibrationControllerStatus::currentTest, executeScan(), nextScanNumber, TestData::nScans, runNumber, TestData::runNumber, sctApiError(), setNextScanNumber(), TestData::startScanNumber, status, TestData::testName, TestData::testPoints, TestData::testPoints_size, TestData::testVariable, and updateStatus(). Referenced by executeSequence(). |
|
Utility function: get all modules in all modulegroups for a particular scan.
Definition at line 201 of file CalibrationControllerImpl.cpp. References status. Referenced by executeSequence(). |
|
Definition at line 54 of file CalibrationControllerImpl.cpp. References api. |
|
Definition at line 115 of file CalibrationControllerImpl.cpp. References nextScanNumber. Referenced by executeSequence(). |
|
Definition at line 111 of file CalibrationControllerImpl.cpp. References runNumber. Referenced by executeSequence(). |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 493 of file CalibrationControllerImpl.cpp. |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 450 of file CalibrationControllerImpl.cpp. |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 458 of file CalibrationControllerImpl.cpp. |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 454 of file CalibrationControllerImpl.cpp. |
|
Definition at line 86 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::INCONTROL, CalibrationControllerStatus::LOADED, CalibrationControllerStatus::status, status, and updateStatus(). Referenced by SctCalibrationController::RunControl::exitRunning(), and SctCalibrationController::RunControl::sctApiError(). |
|
Definition at line 439 of file CalibrationControllerImpl.cpp. References CalibrationControllerImpl(), and inst. |
|
Definition at line 444 of file CalibrationControllerImpl.cpp. References inst. |
|
Definition at line 99 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::BUSY, CalibrationControllerStatus::status, and status. Referenced by doSequence(). |
|
Definition at line 95 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::INCONTROL, CalibrationControllerStatus::status, and status. Referenced by doSequence(). |
|
Definition at line 62 of file CalibrationControllerImpl.cpp. References api, CalibrationControllerStatus::LOADED, CalibrationControllerStatus::status, status, and updateStatus(). Referenced by SctCalibrationController::RunControl::resetaction(). |
|
Definition at line 68 of file CalibrationControllerImpl.cpp. References api, CalibrationControllerStatus::ERROR, rc, SctCalibrationController::RunControl::SCTAPI_ACCESS_FAILURE, SctCalibrationController::RunControl::sctApiError(), CalibrationControllerStatus::status, status, updateStatus(), and Sct::AbstractThrowable::what(). Referenced by executeSequence(), and executeTest(). |
|
Definition at line 58 of file CalibrationControllerImpl.cpp. Referenced by SctCalibrationController::RunControl::loadaction(). |
|
Definition at line 103 of file CalibrationControllerImpl.cpp. References CalibrationControllerStatus::BUSY, CalibrationControllerStatus::INCONTROL, CalibrationControllerStatus::status, status, and updateStatus(). |
|
Definition at line 119 of file CalibrationControllerImpl.cpp. References api, and nextScanNumber. Referenced by executeTest(). |
|
Implements SctCalibrationController::Ipc::CalibrationController. Definition at line 300 of file CalibrationControllerImpl.cpp. References status, CalibrationControllerStatus::updateOption, and updateStatus(). |
|
Definition at line 75 of file CalibrationControllerImpl.cpp. References api, CalibrationControllerStatus::INCONTROL, CalibrationControllerStatus::LOADED, nextScanNumber, CalibrationControllerStatus::status, status, and updateStatus(). Referenced by SctCalibrationController::RunControl::enterRunning(). |
|
Definition at line 498 of file CalibrationControllerImpl.cpp. References status. Referenced by CalibrationControllerImpl(), doSequence(), executeScan(), executeSequence(), executeTest(), giveupControl(), SctCalibrationController::SequenceRequestWorker::operator()(), reset(), sctApiError(), setBusy(), setUpdateOption(), and takeControl(). |
|
Definition at line 96 of file CalibrationControllerImpl.h. Referenced by doSequence(). |
|
Definition at line 91 of file CalibrationControllerImpl.h. Referenced by abort(), and executeTest(). |
|
Definition at line 77 of file CalibrationControllerImpl.h. Referenced by executeScan(), executeSequence(), executeTest(), getApi(), reset(), sctApiError(), setNextScanNumber(), and takeControl(). |
|
Definition at line 515 of file CalibrationControllerImpl.cpp. Referenced by initialize(), and instance(). |
|
Definition at line 94 of file CalibrationControllerImpl.h. Referenced by doSequence(). |
|
Definition at line 90 of file CalibrationControllerImpl.h. Referenced by executeScan(), executeTest(), getNextScanNumber(), setNextScanNumber(), and takeControl(). |
|
Definition at line 88 of file CalibrationControllerImpl.h. Referenced by sctApiError(). |
|
Definition at line 89 of file CalibrationControllerImpl.h. Referenced by executeSequence(), executeTest(), and getRunNumber(). |
|
Definition at line 87 of file CalibrationControllerImpl.h. Referenced by abort(), applyChanges(), CalibrationControllerImpl(), doSequence(), executeScan(), executeSequence(), executeTest(), getAllModulesForScan(), giveupControl(), isBusy(), isInControl(), SctCalibrationController::SequenceRequestWorker::operator()(), reset(), sctApiError(), setBusy(), setUpdateOption(), takeControl(), and updateStatus(). |