tdaq-develop-2025-02-12
DataManagerSupervisor.cc
1 #include "otsdaq/CoreSupervisors/DataManagerSupervisor.h"
2 #include "otsdaq/ConfigurationInterface/ConfigurationManager.h"
3 #include "otsdaq/DataManager/DataManager.h"
4 #include "otsdaq/DataManager/DataManagerSingleton.h"
5 
6 using namespace ots;
7 
8 XDAQ_INSTANTIATOR_IMPL(DataManagerSupervisor)
9 
10 //==============================================================================
11 DataManagerSupervisor::DataManagerSupervisor(xdaq::ApplicationStub* s)
13 {
14  __SUP_COUT__ << "Constructor." << __E__;
15 
16  CoreSupervisorBase::theStateMachineImplementation_.push_back(
17  DataManagerSingleton::getInstance<DataManager>(
18  CorePropertySupervisorBase::getContextTreeNode(),
19  CorePropertySupervisorBase::getSupervisorConfigurationPath(),
20  CorePropertySupervisorBase::getSupervisorUID()));
21 
22  __SUP_COUT__ << "Constructed." << __E__;
23 } // end constructor()
24 
25 //==============================================================================
26 DataManagerSupervisor::~DataManagerSupervisor(void)
27 {
28  __SUP_COUT__ << "Destroying..." << std::endl;
29 
30  DataManagerSingleton::deleteInstance(CorePropertySupervisorBase::getSupervisorUID());
31  theStateMachineImplementation_.pop_back();
32 
33  __SUP_COUT__ << "Destructed." << __E__;
34 } // end destructor()
static void deleteInstance(std::string instanceUID)
There is no way I can realize that the singletonized class has been deleted!