Go to the documentation of this file.
7 #ifndef CBMDIGIMANAGER_H
8 #define CBMDIGIMANAGER_H 1
11 #include <RtypesCore.h>
13 #include <FairLogger.h>
16 #include <boost/any.hpp>
17 #include <boost/exception/exception.hpp>
52 const Digi*
Get(Int_t index)
const {
57 return boost::any_cast<const Digi*>(
fBranches[system]->GetDigi(index));
59 const boost::exception_detail::clone_impl<
60 boost::exception_detail::error_info_injector<boost::bad_any_cast>>&) {
62 <<
"Failed boost any_cast in Digimanager::Get for a digi of type "
63 << Digi::GetClassName();
136 static std::map<ECbmModuleId, CbmDigiBranchBase*>
fBranches;
static std::map< ECbmModuleId, CbmDigiBranchBase * > fBranches
InitStatus Init()
Initialisation.
virtual ~CbmDigiManager()
static Int_t GetNofDigis(ECbmModuleId systemId)
void UseMuchBeamTimeDigi(Bool_t choice=kTRUE)
Use CbmMuchBeamTimeDigi instead of CbmMuchDigi for MUCH.
static Bool_t IsPresent(ECbmModuleId systemId)
Presence of a digi branch.
static Bool_t fIsInitialised
static CbmDigiManager * Instance()
Static instance.
static Bool_t IsMatchPresent(ECbmModuleId systemId)
Presence of a digi match branch.
CbmDigiManager & operator=(const CbmDigiManager &)=delete
ClassDef(CbmDigiManager, 5)
const Digi * Get(Int_t index) const
Get a digi object.
static CbmDigiManager * fgInstance
const CbmMatch * GetMatch(ECbmModuleId systemId, UInt_t index) const
Get a match object.
CbmDigiManager(const CbmDigiManager &)=delete
std::map< ECbmModuleId, std::string > fBranchNames
static Bool_t fUseMuchBeamTimeDigi
void SetBranch()
Set a digi branch.
void SetBranchName(ECbmModuleId system, const char *name)
Set the digi branch name for a system.