00001 #include "otsdaq-core/CoreSupervisors/ARTDAQFEDataManagerSupervisor.h"
00002 #include "otsdaq-core/FECore/FEVInterfacesManager.h"
00003 #include "otsdaq-core/ARTDAQDataManager/ARTDAQDataManager.h"
00004 #include "otsdaq-core/DataManager/DataManagerSingleton.h"
00005 #include "otsdaq-core/ConfigurationInterface/ConfigurationManager.h"
00006
00007 using namespace ots;
00008
00009 XDAQ_INSTANTIATOR_IMPL(ARTDAQFEDataManagerSupervisor)
00010
00011
00012 ARTDAQFEDataManagerSupervisor::ARTDAQFEDataManagerSupervisor(xdaq::ApplicationStub * s)
00013
00014 : CoreSupervisorBase(s)
00015 {
00016
00017 CoreSupervisorBase::theStateMachineImplementation_.push_back(
00018 new FEVInterfacesManager(
00019 CorePropertySupervisorBase::getContextTreeNode(),
00020 CorePropertySupervisorBase::supervisorConfigurationPath_
00021 )
00022 );
00023
00024 CoreSupervisorBase::theStateMachineImplementation_.push_back(
00025 DataManagerSingleton::getInstance<ARTDAQDataManager>(
00026 CorePropertySupervisorBase::getContextTreeNode(),
00027 CorePropertySupervisorBase::supervisorConfigurationPath_,
00028 CorePropertySupervisorBase::supervisorApplicationUID_
00029 )
00030 );
00031 }
00032
00033
00034 ARTDAQFEDataManagerSupervisor::~ARTDAQFEDataManagerSupervisor(void)
00035 {
00036 DataManagerSingleton::deleteInstance(CorePropertySupervisorBase::supervisorApplicationUID_);
00037 theStateMachineImplementation_.pop_back();
00038 }