-
Alexandru Bercuci authored
format (imported from MR 1198)
Alexandru Bercuci authoredformat (imported from MR 1198)
CbmTrdParSet.cxx 2.64 KiB
/* Copyright (C) 2018-2020 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
SPDX-License-Identifier: GPL-3.0-only
Authors: Florian Uhlig [committer], Alexandru Bercuci */
#include "CbmTrdParSet.h"
#include "CbmTrdParMod.h" // for CbmTrdParMod
#include <FairParGenericSet.h> // for FairParGenericSet
#include <FairParamList.h> // for FairParamList
#include <TGenericClassInfo.h> // for TGenericClassInfo
#include <utility> // for pair
#include <stdio.h> // for printf
using std::map;
//_______________________________________________________________________________
CbmTrdParSet::CbmTrdParSet(const char* name, const char* title, const char* context)
: FairParGenericSet(name, title, context)
, fNrOfModules(0)
, fModuleMap()
{
//printf("%s (%s, %s, %s)\n", GetName(), name, title, context);
}
//_______________________________________________________________________________
CbmTrdParSet::~CbmTrdParSet()
{
for (map<Int_t, CbmTrdParMod*>::iterator imod = fModuleMap.begin(); imod != fModuleMap.end(); imod++)
if (imod->second) delete imod->second;
fModuleMap.clear();
}
//_______________________________________________________________________________
Int_t CbmTrdParSet::GetModuleId(Int_t i) const
{
if (i < 0 || i >= fNrOfModules) return -1;
Int_t j(0);
for (map<Int_t, CbmTrdParMod*>::const_iterator imod = fModuleMap.begin(); imod != fModuleMap.end(); imod++, j++) {
if (j < i) continue;
return imod->first;
}
return -1;
}
//_______________________________________________________________________________
const CbmTrdParMod* CbmTrdParSet::GetModulePar(Int_t detId) const
{
map<Int_t, CbmTrdParMod*>::const_iterator imod = fModuleMap.find(detId);
if (imod == fModuleMap.end()) return nullptr;
return imod->second;
}
//_______________________________________________________________________________
CbmTrdParMod* CbmTrdParSet::GetModulePar(Int_t detId)
{
map<Int_t, CbmTrdParMod*>::const_iterator imod = fModuleMap.find(detId);
if (imod == fModuleMap.end()) return nullptr;
return imod->second;
}
//_______________________________________________________________________________
Bool_t CbmTrdParSet::getParams(FairParamList* l)
{
if (!l) return kFALSE;
l->print();
return kTRUE;
}