$treeview $search $mathjax $extrastylesheet
otsdaq
v2_03_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #include "otsdaq-core/CoreSupervisors/ARTDAQFEDataManagerSupervisor.h" 00002 00003 #include "../ARTDAQDataManager/ARTDAQDataManager.h" 00004 #include "otsdaq-core/ConfigurationInterface/ConfigurationManager.h" 00005 #include "otsdaq-core/DataManager/DataManagerSingleton.h" 00006 #include "otsdaq-core/FECore/FEVInterfacesManager.h" 00007 00008 using namespace ots; 00009 00010 XDAQ_INSTANTIATOR_IMPL(ARTDAQFEDataManagerSupervisor) 00011 00012 //======================================================================================================================== 00013 // The intention is that the artdaq Board Reader would be a onsumer 00014 // extracting data that the front-end places in the buffer. 00015 ARTDAQFEDataManagerSupervisor::ARTDAQFEDataManagerSupervisor(xdaq::ApplicationStub* s) 00016 : FEDataManagerSupervisor(s, true /*artdaq Data Manager*/) 00017 { 00018 // __SUP_COUT__ << "Constructor." << std::endl; 00019 // 00020 // //WARNING THE ORDER IS IMPORTANT SINCE THE FIRST STATE MACHINE ELEMENT 00021 // // WILL BE CALLED FIRST DURING TRANSITION!!!!! 00022 // 00023 // //the FE Interfaces Manager is added first, and then the Data Manager 00024 // // So on FSM transitions, front-ends will transition first. 00025 // 00026 // //FEVInterfacesManager gets added in FESupervisor constructor 00027 // __SUP_COUTV__(CoreSupervisorBase::theStateMachineImplementation_.size()); 00028 // 00036 // __SUP_COUT__ << "Adding Data Manager now...!" << __E__; 00037 // CoreSupervisorBase::theStateMachineImplementation_.push_back( 00038 // DataManagerSingleton::getInstance<ARTDAQDataManager>( 00039 // CorePropertySupervisorBase::getContextTreeNode(), 00040 // CorePropertySupervisorBase::supervisorConfigurationPath_, 00041 // CorePropertySupervisorBase::supervisorApplicationUID_ 00042 // ) 00043 // ); 00044 // 00045 // extractDataManager(); 00046 00047 __SUP_COUT__ << "Constructed." << __E__; 00048 } // end constructor() 00049 00050 //======================================================================================================================== 00051 ARTDAQFEDataManagerSupervisor::~ARTDAQFEDataManagerSupervisor(void) 00052 { 00053 // __SUP_COUT__ << "Destroying..." << std::endl; 00054 // 00055 // //theStateMachineImplementation_ is reset and the object it points to deleted in 00056 //~CoreSupervisorBase() 00057 // //This destructor must happen before the CoreSupervisor destructor 00058 // 00059 // DataManagerSingleton::deleteInstance(CoreSupervisorBase::supervisorApplicationUID_); 00060 // theStateMachineImplementation_.pop_back(); 00061 00062 __SUP_COUT__ << "Destructed." << __E__; 00063 } // end destructor()