#include #include /// The static member pointer to the singleton. COMET::IBadChannels* COMET::IBadChannels::fBadChannels = NULL; COMET::IBadChannels::IBadChannels() { } COMET::IBadChannels::~IBadChannels() { /* if (fP0DBadChannels) delete fP0DBadChannels; if (fFGDBadChannels) delete fFGDBadChannels; if (fECALBadChannels) delete fECALBadChannels; if (fSMRDBadChannels) delete fSMRDBadChannels; if (fTPCBadChannels) delete fTPCBadChannels; if (fIngridBadChannels) delete fIngridBadChannels; */ } COMET::IBadChannels& COMET::IBadChannels::Get(void){ bool firstOne=false; if (!fBadChannels) { COMETInfo("Create a new Bad Channel object."); fBadChannels = new COMET::IBadChannels; firstOne=true; } return *fBadChannels; } /* COMET::IP0DBadChannels& COMET::IBadChannels::P0D(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fP0DBadChannels) { fBadChannels->fP0DBadChannels = new IP0DBadChannels(); } return *(fBadChannels->fP0DBadChannels); } COMET::IFGDBadChannels& COMET::IBadChannels::FGD(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fFGDBadChannels) { fBadChannels->fFGDBadChannels = new IFGDBadChannels(); } return *(fBadChannels->fFGDBadChannels); } COMET::IECALBadChannels& COMET::IBadChannels::ECAL(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fECALBadChannels) { fBadChannels->fECALBadChannels = new IECALBadChannels(); } return *(fBadChannels->fECALBadChannels); } COMET::ISMRDBadChannels& COMET::IBadChannels::SMRD(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fSMRDBadChannels) { fBadChannels->fSMRDBadChannels = new ISMRDBadChannels(); } return *(fBadChannels->fSMRDBadChannels); } COMET::ITPCBadChannels& COMET::IBadChannels::TPC(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fTPCBadChannels) { fBadChannels->fTPCBadChannels = new ITPCBadChannels(); } return *(fBadChannels->fTPCBadChannels); } COMET::IIngridBadChannels& COMET::IBadChannels::Ingrid(void){ COMET::IBadChannels::Get(); if (!fBadChannels->fIngridBadChannels) { fBadChannels->fIngridBadChannels = new IIngridBadChannels(); } return *(fBadChannels->fIngridBadChannels); } */ // Return the results for the correct sub-detector. bool COMET::IBadChannels::IsChannelBad(COMET::IChannelId id){ /* if(id.GetSubDetector() == COMET::IChannelId::kP0D) return COMET::IBadChannels::P0D().IsChannelBad(id); else if (id.GetSubDetector() == COMET::IChannelId::kTPC) return COMET::IBadChannels::TPC().IsChannelBad(id); else if (id.GetSubDetector() == COMET::IChannelId::kFGD) return COMET::IBadChannels::FGD().IsChannelBad(id); else if (id.GetSubDetector() == COMET::IChannelId::kECal) return COMET::IBadChannels::ECAL().IsChannelBad(id); else if (id.GetSubDetector() == COMET::IChannelId::kSMRD) return COMET::IBadChannels::SMRD().IsChannelBad(id); else if (id.GetSubDetector() == COMET::IChannelId::kINGRID) return COMET::IBadChannels::Ingrid().IsChannelBad(id); */ return false; } bool COMET::IBadChannels::ExcludeChannel(COMET::IChannelId id){ /* if(id.GetSubDetector() == COMET::IChannelId::kP0D) return COMET::IBadChannels::P0D().ExcludeChannel(id); else if (id.GetSubDetector() == COMET::IChannelId::kTPC) return COMET::IBadChannels::TPC().ExcludeChannel(id); else if (id.GetSubDetector() == COMET::IChannelId::kFGD) return COMET::IBadChannels::FGD().ExcludeChannel(id); else if (id.GetSubDetector() == COMET::IChannelId::kECal) return COMET::IBadChannels::ECAL().ExcludeChannel(id); else if (id.GetSubDetector() == COMET::IChannelId::kSMRD) return COMET::IBadChannels::SMRD().ExcludeChannel(id); else if (id.GetSubDetector() == COMET::IChannelId::kINGRID) return COMET::IBadChannels::Ingrid().ExcludeChannel(id); */ return false; }