diff --git a/MQ/unpacker/CMakeLists.txt b/MQ/unpacker/CMakeLists.txt index 4d2da7356a8ec4af597c65a109636ab040f837cc..7091e5936f640822721dc4f66cb77e4474d8dfb3 100644 --- a/MQ/unpacker/CMakeLists.txt +++ b/MQ/unpacker/CMakeLists.txt @@ -3,14 +3,18 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/startMQSamplerUnpackerParserver.sh.in set(INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR} ${CBMROOT_SOURCE_DIR}/MQ/base - ${CBMROOT_SOURCE_DIR}/fles/mcbm2018/parameter +# ${CBMROOT_SOURCE_DIR}/fles/mcbm2018/parameter ${CBMROOT_SOURCE_DIR}/fles/mcbm2018/dataformat ${CBMROOT_SOURCE_DIR}/fles/mcbm2018/unpacker ${CBMROOT_SOURCE_DIR}/fles/mcbm2018/commonMQ + ${CBMDATA_DIR} ${CBMDATA_DIR}/raw ${CBMDATA_DIR}/tof + ${CBMBASE_DIR} + + ${CBMDETECTORBASE_DIR}/tof ) Set(SYSTEM_INCLUDE_DIRECTORIES @@ -70,6 +74,7 @@ set(DEPENDENCIES ${BOOST_LIBS} fles_ipc CbmFlibMcbm2018 + CbmTofBase CbmBase # CbmBeamtimeBase CbmData diff --git a/core/detectors/much/CMakeLists.txt b/core/detectors/much/CMakeLists.txt index 6fbbc1613d6888b580d04147df123a984b9e6b3b..05c2d1a7976f6d0032bb310a299e8ceaf6061e2b 100644 --- a/core/detectors/much/CMakeLists.txt +++ b/core/detectors/much/CMakeLists.txt @@ -6,14 +6,14 @@ Set(INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR} - ${CBMDATA_DIR} - ${CBMDATA_DIR}/much + ${CBMDATA_DIR} + ${CBMDATA_DIR}/much ) Include_Directories( ${INCLUDE_DIRECTORIES}) Set(SYSTEM_INCLUDE_DIRECTORIES - ${BASE_INCLUDE_DIRECTORIES} + ${BASE_INCLUDE_DIRECTORIES} ) Include_Directories(SYSTEM ${SYSTEM_INCLUDE_DIRECTORIES}) @@ -23,12 +23,13 @@ ${ROOT_LIBRARY_DIR} ${FAIRROOT_LIBRARY_DIR} ${Boost_LIBRARY_DIRS} ) - + link_directories( ${LINK_DIRECTORIES}) set(SRCS -CbmGeoMuchPar.cxx -CbmMuchContFact.cxx +CbmGeoMuchPar.cxx +CbmMcbm2018MuchPar.cxx +CbmMuchContFact.cxx CbmMuchGeoScheme.cxx CbmMuchLayer.cxx CbmMuchLayerSide.cxx @@ -53,7 +54,7 @@ CbmMuchSegmentSector.cxx set(LINKDEF CbmMuchBaseLinkDef.h) Set(LIBRARY_NAME CbmMuchBase) Set(DEPENDENCIES - CbmData Base + CbmData Base ) GENERATE_LIBRARY() diff --git a/fles/mcbm2018/parameter/CbmMcbm2018MuchPar.cxx b/core/detectors/much/CbmMcbm2018MuchPar.cxx similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018MuchPar.cxx rename to core/detectors/much/CbmMcbm2018MuchPar.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018MuchPar.h b/core/detectors/much/CbmMcbm2018MuchPar.h similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018MuchPar.h rename to core/detectors/much/CbmMcbm2018MuchPar.h diff --git a/core/detectors/much/CbmMuchBaseLinkDef.h b/core/detectors/much/CbmMuchBaseLinkDef.h index e69348fc735ea248e693c00f323101abc13e8681..9c85a164630855ca2a6f54aaaa81409f967626cb 100644 --- a/core/detectors/much/CbmMuchBaseLinkDef.h +++ b/core/detectors/much/CbmMuchBaseLinkDef.h @@ -6,6 +6,7 @@ #pragma link C++ class CbmGeoMuchPar; +#pragma link C++ class CbmMcbm2018MuchPar + ; #pragma link C++ class CbmMuchContFact; #pragma link C++ class CbmMuchGeoScheme + ; #pragma link C++ class CbmMuchLayer + ; diff --git a/core/detectors/much/CbmMuchContFact.cxx b/core/detectors/much/CbmMuchContFact.cxx index 9535960ffd802abb055a2f4f98ad73238ad8fcb6..22c2c2e072ff3314acc2033456b285491047a8f0 100644 --- a/core/detectors/much/CbmMuchContFact.cxx +++ b/core/detectors/much/CbmMuchContFact.cxx @@ -3,13 +3,14 @@ * @author M. Ryzhinskiy <m.ryzhinskiy@gsi.de> * @version 0.0 * @since 15.03.07 - * + * * Factory for the parameter containers for MUon CHambers detector * */ #include "CbmMuchContFact.h" -#include "CbmGeoMuchPar.h" // for CbmGeoMuchPar +#include "CbmGeoMuchPar.h" // for CbmGeoMuchPar +#include "CbmMcbm2018MuchPar.h" // for CbmMcbm2018MuchPar #include <FairContFact.h> // for FairContainer #include <FairLogger.h> // for LOG @@ -39,13 +40,17 @@ void CbmMuchContFact::setAllContainers() { // "Much Digitization Parameters", // "TestDefaultContext"); // p1->addContext("TestNonDefaultContext"); + // containers->Add(p1); FairContainer* p2 = new FairContainer( "CbmGeoMuchPar", "Much Geometry Parameters", "TestDefaultContext"); p2->addContext("TestNonDefaultContext"); - - // containers->Add(p1); containers->Add(p2); + + FairContainer* beamPars = new FairContainer( + "CbmMcbm2018MuchPar", "Much at MCBM 2018 Unpack Parameters", "Default"); + beamPars->addContext("Default"); + containers->Add(beamPars); } FairParSet* CbmMuchContFact::createContainer(FairContainer* c) { @@ -58,7 +63,11 @@ FairParSet* CbmMuchContFact::createContainer(FairContainer* c) { if (strcmp(name, "CbmGeoMuchPar") == 0) { p = new CbmGeoMuchPar( c->getConcatName().Data(), c->GetTitle(), c->getContext()); + } else if (strcmp(name, "CbmMcbm2018MuchPar") == 0) { + p = new CbmMcbm2018MuchPar( + c->getConcatName().Data(), c->GetTitle(), c->getContext()); } + return p; } diff --git a/core/detectors/psd/CMakeLists.txt b/core/detectors/psd/CMakeLists.txt index eab3e6de959af2a7ef92bbd8d4c8eebd06283ba7..4f13df901caa84834c2eca2dcdf8a3d5297d57c1 100644 --- a/core/detectors/psd/CMakeLists.txt +++ b/core/detectors/psd/CMakeLists.txt @@ -5,7 +5,7 @@ set(INCLUDE_DIRECTORIES include_directories(${INCLUDE_DIRECTORIES}) set(SYSTEM_INCLUDE_DIRECTORIES - ${BASE_INCLUDE_DIRECTORIES} + ${BASE_INCLUDE_DIRECTORIES} ) include_directories(SYSTEM ${SYSTEM_INCLUDE_DIRECTORIES}) @@ -20,10 +20,12 @@ link_directories(${LINK_DIRECTORIES}) set(SRCS PronyFitter.cxx + CbmPsdContFact.cxx + CbmMcbm2018PsdPar.cxx ) set(LINKDEF CbmPsdBaseLinkDef.h) Set(LIBRARY_NAME CbmPsdBase) -Set(DEPENDENCIES) +Set(DEPENDENCIES Base) GENERATE_LIBRARY() diff --git a/fles/mcbm2018/parameter/CbmMcbm2018PsdPar.cxx b/core/detectors/psd/CbmMcbm2018PsdPar.cxx similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018PsdPar.cxx rename to core/detectors/psd/CbmMcbm2018PsdPar.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018PsdPar.h b/core/detectors/psd/CbmMcbm2018PsdPar.h similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018PsdPar.h rename to core/detectors/psd/CbmMcbm2018PsdPar.h diff --git a/core/detectors/psd/CbmPsdBaseLinkDef.h b/core/detectors/psd/CbmPsdBaseLinkDef.h index c8c79f85ae92accbaa46b07eb57d0feaf923a6fa..f422f171486d29cd78a8c1f935361f6c17099f24 100644 --- a/core/detectors/psd/CbmPsdBaseLinkDef.h +++ b/core/detectors/psd/CbmPsdBaseLinkDef.h @@ -7,5 +7,7 @@ #pragma link off all functions; #pragma link C++ class PsdSignalFitting::PronyFitter; +#pragma link C++ class CbmPsdContFact + ; +#pragma link C++ class CbmMcbm2018PsdPar + ; #endif diff --git a/core/detectors/psd/CbmPsdContFact.cxx b/core/detectors/psd/CbmPsdContFact.cxx new file mode 100644 index 0000000000000000000000000000000000000000..aba06d4e90693aee670fab0983bd6a45f919e1eb --- /dev/null +++ b/core/detectors/psd/CbmPsdContFact.cxx @@ -0,0 +1,58 @@ +/** CbmPsdContFact.h + * + * @author F. Uhlig <f.uhlig@gsi.de> + * @version 1.0 + * @since 25.01.21 + * + * Factory for the parameter containers of the RICH detector + * + */ +#include "CbmPsdContFact.h" + +#include "CbmMcbm2018PsdPar.h" // for CbmMcbm2018PsdPar + +#include <FairContFact.h> // for FairContainer +#include <FairLogger.h> // for LOG +#include <FairRuntimeDb.h> // for FairRuntimeDb + +#include <TList.h> // for TList +#include <TString.h> // for TString + +#include <string.h> // for strcmp + +ClassImp(CbmPsdContFact) + + static CbmPsdContFact gCbmPsdContFact; + +CbmPsdContFact::CbmPsdContFact() { + // Constructor (called when the library is loaded) + fName = "CbmPsdContFact"; + fTitle = "Factory for parameter containers in libPsdBase"; + setAllContainers(); + FairRuntimeDb::instance()->addContFactory(this); +} + +void CbmPsdContFact::setAllContainers() { + /** Creates the Container objects with all accepted contexts and adds them to + * the list of containers for the PsdBase library.*/ + + FairContainer* beamPars = new FairContainer( + "CbmMcbm2018PsdPar", "Psd at MCBM 2018 Unpack Parameters", "Default"); + beamPars->addContext("Default"); + containers->Add(beamPars); +} + +FairParSet* CbmPsdContFact::createContainer(FairContainer* c) { + /** Calls the constructor of the corresponding parameter container. + * For an actual context, which is not an empty string and not the default context + * of this container, the name is concatinated with the context. */ + const char* name = c->GetName(); + LOG(info) << " -I container name " << name; + FairParSet* p = 0; + if (strcmp(name, "CbmMcbm2018PsdPar") == 0) { + p = new CbmMcbm2018PsdPar( + c->getConcatName().Data(), c->GetTitle(), c->getContext()); + } + + return p; +} diff --git a/core/detectors/psd/CbmPsdContFact.h b/core/detectors/psd/CbmPsdContFact.h new file mode 100644 index 0000000000000000000000000000000000000000..b37622e0f0ab3102b3d942468f57d685fdd3ff50 --- /dev/null +++ b/core/detectors/psd/CbmPsdContFact.h @@ -0,0 +1,34 @@ +/** CbmPsdContFact.h + * + * @author F. Uhlig <f.uhlig@gsi.de> + * @version 1.0 + * @since 25.01.21 + * + * Factory for the parameter containers of the PSD detector + * + */ + +#ifndef CBMPSDCONTFACT_H +#define CBMPSDCONTFACT_H + +#include <Rtypes.h> // for THashConsistencyHolder, ClassDef + +#include <FairContFact.h> // for FairContFact + +class FairParIo; +class FairParSet; +class FairContainer; + +class CbmPsdContFact : public FairContFact { +public: + CbmPsdContFact(); + ~CbmPsdContFact() {} + FairParSet* createContainer(FairContainer*); + +private: + void setAllContainers(); + + ClassDef(CbmPsdContFact, 0) // Factory for all Psd parameter containers +}; + +#endif /* !CBMPSDCONTFACT_H */ diff --git a/core/detectors/rich/CMakeLists.txt b/core/detectors/rich/CMakeLists.txt index b4de7be51aea15ae2df674fed8bdff8ded07de38..124f1fe9966f037a92be10ff5a4c9c4d73f48160 100644 --- a/core/detectors/rich/CMakeLists.txt +++ b/core/detectors/rich/CMakeLists.txt @@ -28,6 +28,8 @@ link_directories(${LINK_DIRECTORIES}) set(SRCS CbmRichPmt.cxx CbmRichEventDisplay.cxx + CbmRichContFact.cxx + CbmMcbm2018RichPar.cxx ) set(NO_DICT_SRCS diff --git a/fles/mcbm2018/parameter/CbmMcbm2018RichPar.cxx b/core/detectors/rich/CbmMcbm2018RichPar.cxx similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018RichPar.cxx rename to core/detectors/rich/CbmMcbm2018RichPar.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018RichPar.h b/core/detectors/rich/CbmMcbm2018RichPar.h similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018RichPar.h rename to core/detectors/rich/CbmMcbm2018RichPar.h diff --git a/core/detectors/rich/CbmRichBaseLinkDef.h b/core/detectors/rich/CbmRichBaseLinkDef.h index 06efc46cf0d23fac6b6e06d99c042002831d588a..93a371a3e1e68ef8fba29a14e5b8675f89cae8bd 100644 --- a/core/detectors/rich/CbmRichBaseLinkDef.h +++ b/core/detectors/rich/CbmRichBaseLinkDef.h @@ -6,5 +6,7 @@ #pragma link C++ class CbmRichPmt + ; #pragma link C++ class CbmRichEventDisplay; +#pragma link C++ class CbmRichContFact + ; +#pragma link C++ class CbmMcbm2018RichPar + ; #endif diff --git a/core/detectors/rich/CbmRichContFact.cxx b/core/detectors/rich/CbmRichContFact.cxx new file mode 100644 index 0000000000000000000000000000000000000000..6c48c0291da4e5c2da7eb53601f4ef32d7f746e1 --- /dev/null +++ b/core/detectors/rich/CbmRichContFact.cxx @@ -0,0 +1,58 @@ +/** CbmRichContFact.h + * + * @author F. Uhlig <f.uhlig@gsi.de> + * @version 1.0 + * @since 25.01.21 + * + * Factory for the parameter containers of the RICH detector + * + */ +#include "CbmRichContFact.h" + +#include "CbmMcbm2018RichPar.h" // for CbmMcbm2018RichPar + +#include <FairContFact.h> // for FairContainer +#include <FairLogger.h> // for LOG +#include <FairRuntimeDb.h> // for FairRuntimeDb + +#include <TList.h> // for TList +#include <TString.h> // for TString + +#include <string.h> // for strcmp + +ClassImp(CbmRichContFact) + + static CbmRichContFact gCbmRichContFact; + +CbmRichContFact::CbmRichContFact() { + // Constructor (called when the library is loaded) + fName = "CbmRichContFact"; + fTitle = "Factory for parameter containers in libRichBase"; + setAllContainers(); + FairRuntimeDb::instance()->addContFactory(this); +} + +void CbmRichContFact::setAllContainers() { + /** Creates the Container objects with all accepted contexts and adds them to + * the list of containers for the RichBase library.*/ + + FairContainer* beamPars = new FairContainer( + "CbmMcbm2018RichPar", "Rich at MCBM 2018 Unpack Parameters", "Default"); + beamPars->addContext("Default"); + containers->Add(beamPars); +} + +FairParSet* CbmRichContFact::createContainer(FairContainer* c) { + /** Calls the constructor of the corresponding parameter container. + * For an actual context, which is not an empty string and not the default context + * of this container, the name is concatinated with the context. */ + const char* name = c->GetName(); + LOG(info) << " -I container name " << name; + FairParSet* p = 0; + if (strcmp(name, "CbmMcbm2018RichPar") == 0) { + p = new CbmMcbm2018RichPar( + c->getConcatName().Data(), c->GetTitle(), c->getContext()); + } + + return p; +} diff --git a/core/detectors/rich/CbmRichContFact.h b/core/detectors/rich/CbmRichContFact.h new file mode 100644 index 0000000000000000000000000000000000000000..bdcdc2d32a8db13e8c21ab9c165c916645ac58a6 --- /dev/null +++ b/core/detectors/rich/CbmRichContFact.h @@ -0,0 +1,34 @@ +/** CbmRichContFact.h + * + * @author F. Uhlig <f.uhlig@gsi.de> + * @version 1.0 + * @since 25.01.21 + * + * Factory for the parameter containers of the RICH detector + * + */ + +#ifndef CBMRICHCONTFACT_H +#define CBMRICHCONTFACT_H + +#include <Rtypes.h> // for THashConsistencyHolder, ClassDef + +#include <FairContFact.h> // for FairContFact + +class FairParIo; +class FairParSet; +class FairContainer; + +class CbmRichContFact : public FairContFact { + +public: + CbmRichContFact(); + ~CbmRichContFact() {} + FairParSet* createContainer(FairContainer*); + +private: + void setAllContainers(); + ClassDef(CbmRichContFact, 0) // Factory for all Rich parameter containers +}; + +#endif /* !CBMRICHCONTFACT_H */ diff --git a/core/detectors/sts/CMakeLists.txt b/core/detectors/sts/CMakeLists.txt index acdea233196d3e0b7c30c065b2c43b1e51c1738e..9e70d4615dbc0dd2d52084367bd36786c0872d6f 100644 --- a/core/detectors/sts/CMakeLists.txt +++ b/core/detectors/sts/CMakeLists.txt @@ -20,6 +20,7 @@ CbmStsParSetModule.cxx CbmStsParSetSensor.cxx CbmStsParSetSensorCond.cxx CbmStsParSim.cxx +CbmMcbm2018StsPar.cxx CbmStsPhysics.cxx CbmStsSensor.cxx CbmStsSetup.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018StsPar.cxx b/core/detectors/sts/CbmMcbm2018StsPar.cxx similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018StsPar.cxx rename to core/detectors/sts/CbmMcbm2018StsPar.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018StsPar.h b/core/detectors/sts/CbmMcbm2018StsPar.h similarity index 99% rename from fles/mcbm2018/parameter/CbmMcbm2018StsPar.h rename to core/detectors/sts/CbmMcbm2018StsPar.h index 2378ec2eb904ba30c750e2f5475ce445024f4507..e60cb7f78387aba4a8ceebf1884dc0273aa822be 100644 --- a/fles/mcbm2018/parameter/CbmMcbm2018StsPar.h +++ b/core/detectors/sts/CbmMcbm2018StsPar.h @@ -116,7 +116,7 @@ private: 0x0014, 0x0009, 0x000D, 0x000F, 0x0008, 0x000A, 0x0002, 0x0004, 0x0006, 0x000B, 0x0005, 0x0000, 0x0003, 0x0007, 0x0001, }; //! Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb ) - // static constexpr UInt_t kuCrobMapElinkFebB[ kuNbElinksPerCrob ] = { + // static constexpr UInt_t kuCrobMapElinkFebB[ kuNbElinksPerCrob ] = { const UInt_t kuCrobMapElinkFebB [kuNbElinksPerCrob] = diff --git a/core/detectors/sts/CbmStsBaseLinkDef.h b/core/detectors/sts/CbmStsBaseLinkDef.h index be239d25b62ebbeec4f7652375ba69a507d4d851..5fd4a03d16f704305e9a629691a253bc2e515f11 100644 --- a/core/detectors/sts/CbmStsBaseLinkDef.h +++ b/core/detectors/sts/CbmStsBaseLinkDef.h @@ -14,6 +14,7 @@ #pragma link C++ class CbmStsParSetModule + ; #pragma link C++ class CbmStsParSetSensor + ; #pragma link C++ class CbmStsParSetSensorCond + ; +#pragma link C++ class CbmMcbm2018StsPar + ; #pragma link C++ class CbmStsParSim + ; #pragma link C++ class CbmStsPhysics + ; #pragma link C++ class CbmStsSensor + ; diff --git a/core/detectors/sts/CbmStsContFact.cxx b/core/detectors/sts/CbmStsContFact.cxx index 18e57053b8d9e852e98ee21ce4e88cace79da577..2ebd5688e2da5c7d23a47addc8092dddf4f533b9 100644 --- a/core/detectors/sts/CbmStsContFact.cxx +++ b/core/detectors/sts/CbmStsContFact.cxx @@ -4,6 +4,7 @@ **/ #include "CbmStsContFact.h" +#include "CbmMcbm2018StsPar.h" // for CbmMcbm2018StsPar #include "CbmStsParSetModule.h" // for CbmStsParSetModule #include "CbmStsParSetSensor.h" // for CbmStsParSetSensor #include "CbmStsParSetSensorCond.h" // for CbmStsParSetSensorCond @@ -63,7 +64,6 @@ FairParSet* CbmStsContFact::createContainer(FairContainer* container) { LOG(info) << "Done"; } - // --- Sensor conditions else if (strcmp(contName, "CbmStsParSetSensorCond") == 0) { parSet = new CbmStsParSetSensorCond(container->getConcatName().Data(), @@ -71,6 +71,13 @@ FairParSet* CbmStsContFact::createContainer(FairContainer* container) { container->getContext()); } + // --- Beamtime parameters + else if (strcmp(contName, "CbmMcbm2018StsPar") == 0) { + parSet = new CbmMcbm2018StsPar(container->getConcatName().Data(), + container->GetTitle(), + container->getContext()); + } + LOG(info) << GetName() << ": Create container " << contName << " with parameter set " << parSet->GetName(); return parSet; @@ -104,5 +111,11 @@ void CbmStsContFact::setAllContainers() { "CbmStsParSetSensorCond", "STS sensor conditions", "Default"); sensorCond->addContext("Default"); containers->Add(sensorCond); + + // Beamtime parameters + FairContainer* beamPars = new FairContainer( + "CbmMcbm2018StsPar", "STS at MCBM 2018 Unpack Parameters", "Default"); + beamPars->addContext("Default"); + containers->Add(beamPars); } // -------------------------------------------------------------------------- diff --git a/core/detectors/tof/CMakeLists.txt b/core/detectors/tof/CMakeLists.txt index 5cc2617cf56225bf9dabdd7ac8270794133e43ee..913ecf876ce22cd5d041980a1287b9b25fa95fd4 100644 --- a/core/detectors/tof/CMakeLists.txt +++ b/core/detectors/tof/CMakeLists.txt @@ -3,12 +3,13 @@ set(INCLUDE_DIRECTORIES ${CBMDATA_DIR} ${CBMDATA_DIR}/tof + ${CBMDATA_DIR}/raw ) include_directories(${INCLUDE_DIRECTORIES}) set(SYSTEM_INCLUDE_DIRECTORIES - ${BASE_INCLUDE_DIRECTORIES} + ${BASE_INCLUDE_DIRECTORIES} ) include_directories(SYSTEM ${SYSTEM_INCLUDE_DIRECTORIES}) @@ -23,10 +24,11 @@ link_directories(${LINK_DIRECTORIES}) set(SRCS CbmTofCell.cxx - CbmTofContFact.cxx + CbmTofContFact.cxx CbmTofCreateDigiPar.cxx - CbmTofDigiBdfPar.cxx - CbmTofDigiPar.cxx + CbmTofDigiBdfPar.cxx + CbmTofDigiPar.cxx + CbmMcbm2018TofPar.cxx CbmTofGeoHandler.cxx TTrbHeader.cxx ) diff --git a/fles/mcbm2018/parameter/CbmMcbm2018TofPar.cxx b/core/detectors/tof/CbmMcbm2018TofPar.cxx similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018TofPar.cxx rename to core/detectors/tof/CbmMcbm2018TofPar.cxx diff --git a/fles/mcbm2018/parameter/CbmMcbm2018TofPar.h b/core/detectors/tof/CbmMcbm2018TofPar.h similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2018TofPar.h rename to core/detectors/tof/CbmMcbm2018TofPar.h diff --git a/core/detectors/tof/CbmTofBaseLinkDef.h b/core/detectors/tof/CbmTofBaseLinkDef.h index 920054d41d361e6d90095a91cab3b1350e040798..79ce336bd264a265e4258c4dad3444b4bb0dd153 100644 --- a/core/detectors/tof/CbmTofBaseLinkDef.h +++ b/core/detectors/tof/CbmTofBaseLinkDef.h @@ -11,6 +11,7 @@ #pragma link C++ class CbmTofCreateDigiPar + ; #pragma link C++ class CbmTofDigiBdfPar + ; #pragma link C++ class CbmTofDigiPar + ; +#pragma link C++ class CbmMcbm2018TofPar + ; #pragma link C++ class CbmTofGeoHandler + ; #pragma link C++ class TTrbHeader + ; diff --git a/core/detectors/tof/CbmTofContFact.cxx b/core/detectors/tof/CbmTofContFact.cxx index 896e762f695e7af3cadfbf082c707648c05c7380..2dd7b1a1af0841296b47c8715166cd152511cf09 100644 --- a/core/detectors/tof/CbmTofContFact.cxx +++ b/core/detectors/tof/CbmTofContFact.cxx @@ -10,8 +10,9 @@ ///////////////////////////////////////////////////////////// #include "CbmTofContFact.h" -#include "CbmTofDigiBdfPar.h" // for CbmTofDigiBdfPar -#include "CbmTofDigiPar.h" // for CbmTofDigiPar +#include "CbmMcbm2018TofPar.h" // for CbmMcbm2018TofPar +#include "CbmTofDigiBdfPar.h" // for CbmTofDigiBdfPar +#include "CbmTofDigiPar.h" // for CbmTofDigiPar #include <FairContFact.h> // for FairContainer #include <FairLogger.h> // for LOG @@ -50,6 +51,11 @@ void CbmTofContFact::setAllContainers() { p2->addContext("TestNonDefaultContext"); containers->Add(p2); + + FairContainer* beamPars = new FairContainer( + "CbmMcbm2018TofPar", "TOF at MCBM 2018 Unpack Parameters", "Default"); + beamPars->addContext("Default"); + containers->Add(beamPars); } FairParSet* CbmTofContFact::createContainer(FairContainer* c) { @@ -62,10 +68,13 @@ FairParSet* CbmTofContFact::createContainer(FairContainer* c) { if (strcmp(name, "CbmTofDigiPar") == 0) { p = new CbmTofDigiPar( c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } - if (strcmp(name, "CbmTofDigiBdfPar") == 0) { + } else if (strcmp(name, "CbmTofDigiBdfPar") == 0) { p = new CbmTofDigiBdfPar( c->getConcatName().Data(), c->GetTitle(), c->getContext()); + } else if (strcmp(name, "CbmMcbm2018TofPar") == 0) { + p = new CbmMcbm2018TofPar( + c->getConcatName().Data(), c->GetTitle(), c->getContext()); } + return p; } diff --git a/core/detectors/tof/CbmTofContFact.h b/core/detectors/tof/CbmTofContFact.h index 8cc35a77f99362b586fb0cc49ea4167efb50fe90..1d8d08fdbe2629992d8fe2f4cada02c058d79eba 100644 --- a/core/detectors/tof/CbmTofContFact.h +++ b/core/detectors/tof/CbmTofContFact.h @@ -9,15 +9,16 @@ class FairParSet; class FairContainer; class CbmTofContFact : public FairContFact { -private: - void setAllContainers(); - CbmTofContFact(const CbmTofContFact&); - CbmTofContFact& operator=(const CbmTofContFact&); public: CbmTofContFact(); ~CbmTofContFact() {} FairParSet* createContainer(FairContainer*); + +private: + void setAllContainers(); + CbmTofContFact(const CbmTofContFact&); + CbmTofContFact& operator=(const CbmTofContFact&); ClassDef(CbmTofContFact, 0) // Factory for all TOF parameter containers }; diff --git a/core/detectors/trd/CMakeLists.txt b/core/detectors/trd/CMakeLists.txt index 5c6a7ffe4b554e57b3cbe043baf22ca04cce20f9..871ab6f0b2047904a140f49758cc509f5a5b5daf 100644 --- a/core/detectors/trd/CMakeLists.txt +++ b/core/detectors/trd/CMakeLists.txt @@ -5,14 +5,14 @@ Set(INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR} ${CBMBASE_DIR} -${CBMDATA_DIR} -${CBMDATA_DIR}/trd +${CBMDATA_DIR} +${CBMDATA_DIR}/trd ) Include_Directories( ${INCLUDE_DIRECTORIES}) Set(SYSTEM_INCLUDE_DIRECTORIES - ${BASE_INCLUDE_DIRECTORIES} + ${BASE_INCLUDE_DIRECTORIES} ${Boost_INCLUDE_DIR} ) @@ -23,46 +23,47 @@ ${ROOT_LIBRARY_DIR} ${FAIRROOT_LIBRARY_DIR} ${Boost_LIBRARY_DIRS} ${Vc_LIB_DIR} -) +) link_directories( ${LINK_DIRECTORIES}) set(SRCS -CbmTrdGas.cxx -CbmTrdContFact.cxx -CbmTrdParManager.cxx -CbmTrdModuleAbstract.cxx -CbmTrdParSet.cxx -CbmTrdParSetAsic.cxx -CbmTrdParSetGas.cxx -CbmTrdParSetGain.cxx -CbmTrdParSetGeo.cxx -CbmTrdParSetDigi.cxx -CbmTrdParMod.cxx -CbmTrdParAsic.cxx -CbmTrdParSpadic.cxx -CbmTrdSPADIC.cxx -CbmTrdFASP.cxx -CbmTrdParFasp.cxx -CbmTrdParModDigi.cxx -CbmTrdParModGas.cxx -CbmTrdParModGain.cxx -CbmTrdParModGeo.cxx +CbmTrdGas.cxx +CbmTrdContFact.cxx +CbmTrdParManager.cxx +CbmTrdModuleAbstract.cxx +CbmMcbm2020TrdTshiftPar.cxx +CbmTrdParSet.cxx +CbmTrdParSetAsic.cxx +CbmTrdParSetGas.cxx +CbmTrdParSetGain.cxx +CbmTrdParSetGeo.cxx +CbmTrdParSetDigi.cxx +CbmTrdParMod.cxx +CbmTrdParAsic.cxx +CbmTrdParSpadic.cxx +CbmTrdSPADIC.cxx +CbmTrdFASP.cxx +CbmTrdParFasp.cxx +CbmTrdParModDigi.cxx +CbmTrdParModGas.cxx +CbmTrdParModGain.cxx +CbmTrdParModGeo.cxx #tools CbmTrdGeoHandler.cxx CbmTrdUtils.cxx CbmTrdHardwareSetupR.cxx -CbmTrdRadiator.cxx +CbmTrdRadiator.cxx ) IF (SSE_FOUND) ADD_DEFINITIONS(-DHAVE_SSE) - SET_SOURCE_FILES_PROPERTIES(${SRCS} PROPERTIES COMPILE_FLAGS + SET_SOURCE_FILES_PROPERTIES(${SRCS} PROPERTIES COMPILE_FLAGS "-msse -O3") Message(STATUS "TRD BASE will be compiled with SSE support") ELSE (SSE_FOUND) Message(STATUS "TRD BASE will be compiled without SSE support") - SET_SOURCE_FILES_PROPERTIES(${SRCS} PROPERTIES COMPILE_FLAGS + SET_SOURCE_FILES_PROPERTIES(${SRCS} PROPERTIES COMPILE_FLAGS "-O3") ENDIF (SSE_FOUND) diff --git a/fles/mcbm2018/parameter/CbmMcbm2020TrdTshiftPar.cxx b/core/detectors/trd/CbmMcbm2020TrdTshiftPar.cxx similarity index 99% rename from fles/mcbm2018/parameter/CbmMcbm2020TrdTshiftPar.cxx rename to core/detectors/trd/CbmMcbm2020TrdTshiftPar.cxx index 9b0823cb4b0721ebefa6119a019a254e84694871..a21212e173ca25f1864c59bc1be002e97beef55e 100644 --- a/fles/mcbm2018/parameter/CbmMcbm2020TrdTshiftPar.cxx +++ b/core/detectors/trd/CbmMcbm2020TrdTshiftPar.cxx @@ -7,7 +7,7 @@ * Modified By: Pascal Raisig * ----- * Purpose: This container is only to be used for Trd mCbm2020 data. It contains the - * corrections for the observed timeshifts within the 2020 data. + * corrections for the observed timeshifts within the 2020 data. * ----- */ diff --git a/fles/mcbm2018/parameter/CbmMcbm2020TrdTshiftPar.h b/core/detectors/trd/CbmMcbm2020TrdTshiftPar.h similarity index 100% rename from fles/mcbm2018/parameter/CbmMcbm2020TrdTshiftPar.h rename to core/detectors/trd/CbmMcbm2020TrdTshiftPar.h diff --git a/core/detectors/trd/CbmTrdBaseLinkDef.h b/core/detectors/trd/CbmTrdBaseLinkDef.h index 31e51c77aa0ae9a8516cd0cd892affb944690ec1..6e8fa9a452619d678e9a208ab16bf598a7048e6e 100644 --- a/core/detectors/trd/CbmTrdBaseLinkDef.h +++ b/core/detectors/trd/CbmTrdBaseLinkDef.h @@ -8,6 +8,7 @@ #pragma link C++ class CbmTrdGas + ; #pragma link C++ class CbmTrdContFact + ; +#pragma link C++ class CbmMcbm2020TrdTshiftPar +; #pragma link C++ class CbmTrdModuleAbstract + ; #pragma link C++ class CbmTrdParManager + ; diff --git a/core/detectors/trd/CbmTrdContFact.cxx b/core/detectors/trd/CbmTrdContFact.cxx index b11a076cc35f63aa0f04ed1a3fcc8938473f53f2..cd381d269b4a05b99f74f2a0c18869b7c3d7a311 100644 --- a/core/detectors/trd/CbmTrdContFact.cxx +++ b/core/detectors/trd/CbmTrdContFact.cxx @@ -10,11 +10,12 @@ ///////////////////////////////////////////////////////////// #include "CbmTrdContFact.h" -#include "CbmTrdParSetAsic.h" // for CbmTrdParSetAsic -#include "CbmTrdParSetDigi.h" // for CbmTrdParSetDigi -#include "CbmTrdParSetGain.h" // for CbmTrdParSetGain -#include "CbmTrdParSetGas.h" // for CbmTrdParSetGas -#include "CbmTrdParSetGeo.h" // for CbmTrdParSetGeo +#include "CbmMcbm2020TrdTshiftPar.h" // for CbmMcbm2020TrdTshiftPar +#include "CbmTrdParSetAsic.h" // for CbmTrdParSetAsic +#include "CbmTrdParSetDigi.h" // for CbmTrdParSetDigi +#include "CbmTrdParSetGain.h" // for CbmTrdParSetGain +#include "CbmTrdParSetGas.h" // for CbmTrdParSetGas +#include "CbmTrdParSetGeo.h" // for CbmTrdParSetGeo #include <FairContFact.h> // for FairContainer #include <FairLogger.h> // for Logger, LOG @@ -68,6 +69,13 @@ void CbmTrdContFact::setAllContainers() { "CbmTrdParSetGeo", "Trd Geometry Parameters", "TestDefaultContext"); par->addContext("TestNonDefaultContext"); containers->Add(par); + + FairContainer* pTrd = + new FairContainer("CbmMcbm2020TrdTshiftPar", + "TRD timeshift unpacker parameters mCbm 2020", + "Default"); + pTrd->addContext("Default"); + containers->Add(pTrd); } FairParSet* CbmTrdContFact::createContainer(FairContainer* c) { @@ -93,5 +101,10 @@ FairParSet* CbmTrdContFact::createContainer(FairContainer* c) { else if (strcmp(name, "CbmTrdParSetGeo") == 0) p = new CbmTrdParSetGeo( c->getConcatName().Data(), c->GetTitle(), c->getContext()); + else if (strcmp(name, "CbmMcbm2020TrdTshiftPar") == 0) { + p = new CbmMcbm2020TrdTshiftPar( + c->getConcatName().Data(), c->GetTitle(), c->getContext()); + } + return p; } diff --git a/fles/mcbm2018/CMakeLists.txt b/fles/mcbm2018/CMakeLists.txt index 5a975a8e91ddf7d125fe57dd6656720c27ff678b..ae03e644e33c615a9e39b20a9d6a86e267b0b776 100644 --- a/fles/mcbm2018/CMakeLists.txt +++ b/fles/mcbm2018/CMakeLists.txt @@ -28,6 +28,10 @@ Set(INCLUDE_DIRECTORIES ${CBMDETECTORBASE_DIR}/trd # required for parameter handling of the trd ${CBMDETECTORBASE_DIR}/psd + ${CBMDETECTORBASE_DIR}/sts + ${CBMDETECTORBASE_DIR}/tof + ${CBMDETECTORBASE_DIR}/much + ${CBMDETECTORBASE_DIR}/rich ) Set(SYSTEM_INCLUDE_DIRECTORIES @@ -36,8 +40,6 @@ Set(SYSTEM_INCLUDE_DIRECTORIES ${ROOT_INCLUDE_DIR} ${IPC_INCLUDE_DIRECTORY} ${CBMROOT_SOURCE_DIR}/external/flib_dpb/flib_dpb - ${CBMDATA_DIR} - ${CBMDATA_DIR}/tof ${CMAKE_SOURCE_DIR}/external/cppzmq ) @@ -61,14 +63,8 @@ Set(SRCS CbmMcbm2018Source.cxx CbmMcbm2018MsCrcCheck.cxx - parameter/CbmMcbm2018StsPar.cxx - parameter/CbmMcbm2018MuchPar.cxx - parameter/CbmMcbm2018TofPar.cxx - parameter/CbmMcbm2018RichPar.cxx parameter/CbmMcbm2018HodoPar.cxx parameter/CbmMcbm2018ContFact.cxx - parameter/CbmMcbm2018PsdPar.cxx - parameter/CbmMcbm2020TrdTshiftPar.cxx unpacker/CbmMcbm2018RawConverterSdpb.cxx unpacker/CbmMcbm2018RawConverterGdpb.cxx @@ -143,7 +139,9 @@ EndIf() Set(LINKDEF CbmFlibMcbm2018LinkDef.h ) Set(LIBRARY_NAME CbmFlibMcbm2018) Set(DEPENDENCIES - CbmFlibFlesTools CbmData CbmBase fles_ipc Eve Base CbmTrdBase CbmPsdBase + CbmFlibFlesTools CbmStsBase CbmTofBase + CbmRichBase CbmMuchBase CbmTrdBase CbmPsdBase + CbmData CbmBase fles_ipc Eve Base ) GENERATE_LIBRARY() diff --git a/fles/mcbm2018/CbmFlibMcbm2018LinkDef.h b/fles/mcbm2018/CbmFlibMcbm2018LinkDef.h index f4570ee2e4ebcbf358d397228b897b9610758711..2c9a2771bfdafd5638f5bf2137e938969642235e 100644 --- a/fles/mcbm2018/CbmFlibMcbm2018LinkDef.h +++ b/fles/mcbm2018/CbmFlibMcbm2018LinkDef.h @@ -8,14 +8,8 @@ #pragma link C++ class CbmMcbm2018Source; #pragma link C++ class CbmMcbm2018MsCrcCheck; -#pragma link C++ class CbmMcbm2018StsPar; -#pragma link C++ class CbmMcbm2018MuchPar; -#pragma link C++ class CbmMcbm2018TofPar; -#pragma link C++ class CbmMcbm2018RichPar; #pragma link C++ class CbmMcbm2018HodoPar; #pragma link C++ class CbmMcbm2018ContFact; -#pragma link C++ class CbmMcbm2018PsdPar; -#pragma link C++ class CbmMcbm2020TrdTshiftPar + ; #pragma link C++ class CbmMcbm2018RawConverterSdpb; #pragma link C++ class CbmMcbm2018RawConverterGdpb; diff --git a/fles/mcbm2018/parameter/CbmMcbm2018ContFact.cxx b/fles/mcbm2018/parameter/CbmMcbm2018ContFact.cxx index 0748affe15e2d4bca11443c6e045629a805eeabf..88964fb14a1ac671d127076142df2f88e02cba7d 100644 --- a/fles/mcbm2018/parameter/CbmMcbm2018ContFact.cxx +++ b/fles/mcbm2018/parameter/CbmMcbm2018ContFact.cxx @@ -9,12 +9,6 @@ #include "CbmMcbm2018ContFact.h" #include "CbmMcbm2018HodoPar.h" -#include "CbmMcbm2018MuchPar.h" -#include "CbmMcbm2018PsdPar.h" -#include "CbmMcbm2018RichPar.h" -#include "CbmMcbm2018StsPar.h" -#include "CbmMcbm2018TofPar.h" -#include "CbmMcbm2020TrdTshiftPar.h" #include "FairRuntimeDb.h" @@ -34,33 +28,6 @@ void CbmMcbm2018ContFact::setAllContainers() { /** Creates the Container objects with all accepted contexts and adds them to * the list of containers for the fles test library.*/ - FairContainer* pSts = new FairContainer("CbmMcbm2018StsPar", - "STS at MCBM 2018 Unpack Parameters", - "TestDefaultContext"); - pSts->addContext("TestNonDefaultContext"); - containers->Add(pSts); - - FairContainer* pMuch = - new FairContainer("CbmMcbm2018MuchPar", - "MUCH at MCBM 2018 Unpack Parameters", - "TestDefaultContext"); - pMuch->addContext("TestNonDefaultContext"); - containers->Add(pMuch); - - - FairContainer* pTof = new FairContainer("CbmMcbm2018TofPar", - "TOF at MCBM 2018 Unpack Parameters", - "TestDefaultContext"); - pTof->addContext("TestNonDefaultContext"); - containers->Add(pTof); - - FairContainer* pRich = - new FairContainer("CbmMcbm2018RichPar", - "RICH at MCBM 2018 Unpack Parameters", - "TestDefaultContext"); - pRich->addContext("TestNonDefaultContext"); - containers->Add(pRich); - FairContainer* pHodo = new FairContainer("CbmMcbm2018HodoPar", "HODO at MCBM 2018 Unpack Parameters", @@ -68,18 +35,6 @@ void CbmMcbm2018ContFact::setAllContainers() { pHodo->addContext("TestNonDefaultContext"); containers->Add(pHodo); - FairContainer* pPsd = new FairContainer("CbmMcbm2018PsdPar", - "PSD at MCBM 2018 Unpack Parameters", - "TestDefaultContext"); - pPsd->addContext("TestNonDefaultContext"); - containers->Add(pPsd); - - FairContainer* pTrd = - new FairContainer("CbmMcbm2020TrdTshiftPar", - "TRD timeshift unpacker parameters mCbm 2020", - "Trd mCbm 2020 timeshift correction"); - pTrd->addContext("TestDefaultContext"); - containers->Add(pTrd); } FairParSet* CbmMcbm2018ContFact::createContainer(FairContainer* c) { @@ -89,34 +44,10 @@ FairParSet* CbmMcbm2018ContFact::createContainer(FairContainer* c) { const char* name = c->GetName(); FairParSet* p = 0; - if (strcmp(name, "CbmMcbm2018StsPar") == 0) { - p = new CbmMcbm2018StsPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } - if (strcmp(name, "CbmMcbm2018MuchPar") == 0) { - p = new CbmMcbm2018MuchPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } - if (strcmp(name, "CbmMcbm2018TofPar") == 0) { - p = new CbmMcbm2018TofPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } - if (strcmp(name, "CbmMcbm2018RichPar") == 0) { - p = new CbmMcbm2018RichPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } if (strcmp(name, "CbmMcbm2018HodoPar") == 0) { p = new CbmMcbm2018HodoPar( c->getConcatName().Data(), c->GetTitle(), c->getContext()); } - if (strcmp(name, "CbmMcbm2018PsdPar") == 0) { - p = new CbmMcbm2018PsdPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } - if (strcmp(name, "CbmMcbm2020TrdTshiftPar") == 0) { - p = new CbmMcbm2020TrdTshiftPar( - c->getConcatName().Data(), c->GetTitle(), c->getContext()); - } return p; }